▷ numpy.arange(), linspace(): Erzeugen von ndarray mit gleichmäßig verteilten Werten | PythonSeminar (2024)

numpy.arange() und numpy.linspace() erzeugen numpy.ndarray mit gleichmäßig verteilten Werten.

Der Unterschied besteht darin, dass bei np.arange() das Intervall und bei np.linspace() sterben Anzahl der Elemente angegeben WIRD.

Dieser Artikel enthält Folgendes:

  • Geben Sie das Intervall an:numpy.arange()
  • Geben Sie die Anzahl der Elemente an:numpy.linspace()
    • Grundlegende Verwendung
    • Stopp einschließen oder nicht:endpoint
    • Holen Sie sich das Intervall:retstep
  • In umgekehrter Reihenfolge umwandeln
  • In ein mehrdimensionales Array konvertieren

Geben Sie das Intervall an:numpy.arange()

numpy.arange() ähnelt Pythons eingebauter Funktion range(). Siehe den following Artikel für range().

numpy.arange() generiert numpy.ndarray mit gleichmäßig verteilten Werten wie folgt gemäß der Anzahl der angegebenen Argumente.

  • numpy.arrange(stop)
  • numpy.arange(start, stop)
  • numpy.arange(Start, Stopp, Schritt)
    • start <= n < stop (schrittweise steigend)
import numpy as npprint(np.arange(3))# [0 1 2]print(np.arange(3, 10))# [3 4 5 6 7 8 9]print(np.arange(3, 10, 2))# [3 5 7 9]

Im Gegensatz zu range() can SIE float als Argument für numpy.arange() angeben.

print(np.arange(0.3, 1.0, 0.2))# [0.3 0.5 0.7 0.9]

Das Verhalten bei negativen Werten entspricht dem von range(). Wenn kein entsprechender Wert vorhanden ist, wird ein leeres numpy.ndarray generiert.

print(np.arange(-3, 3))# [-3 -2 -1 0 1 2]print(np.arange(10, 3))# []print(np.arange(10, 3, -2))# [10 8 6 4]

Der Datentyp dtype WIRD automatisch ausgewählt, kann aber mit dem Argument dtype angegeben werden.

print(np.arange(3, dtype=float))# [0. 1. 2.]print(np.arange(3, 10, dtype=float))# [3. 4. 5. 6. 7. 8. 9.]print(np.arange(3, 10, 2, dtype=float))# [3. 5. 7. 9.]

Weitere Informationen zum Datentyp dtype in NumPy finden Sie im following Artikel.

Geben Sie die Anzahl der Elemente an:numpy.linspace()

Grundlegende Verwendung

Mit numpy.linspace() can SIE anstelle des Intervalls sterben Anzahl der Elemente angeben.

Geben Sie den Startwert im ersten Argument start, den Endwert im zweiten Argument stop und die Anzahl der Elemente im dritten Argument num an. Das Intervall WIRD anhand dieser Werte automatisch berechnet.

import numpy as npprint(np.linspace(0, 10, 3))# [ 0. 5. 10.]print(np.linspace(0, 10, 4))# [ 0. 3.33333333 6.66666667 10. ]print(np.linspace(0, 10, 5))# [ 0. 2.5 5. 7.5 10. ]

Es behandelt auch den Fall von Start > Stopp richtig.

print(np.linspace(10, 0, 5))# [10. 7.5 5. 2.5 0. ]

Der Datentyp dtype WIRD automatisch ausgewählt, kann aber mit dem Argument dtype angegeben werden.

print(np.linspace(0, 10, 3, dtype=int))# [ 0 5 10]

Stopp einschließen oder nicht:endpoint

Standardmäßig ist der Wert von stop im Ergebnis enthalten.

If das Argument endpoint auf False gesetzt ist, enthält das Ergebnis nicht stop.

print(np.linspace(0, 10, 5))# [ 0. 2.5 5. 7.5 10. ]print(np.linspace(0, 10, 5, endpoint=False))# [0. 2. 4. 6. 8.]

Die Beziehung zwischen dem Endpunkt des Arguments und dem Intervallschritt ist wie folgt.

  • endpoint=True (Standard)
    • step = (stop – start) / (num – 1)
  • Endpunkt=Falsch
    • step = (stop – start) / num

Holen Sie sich das Intervall:retstep

Wenn Sie das Intervall erhalten möchten, setzen Sie das Argument retstep auf True.

In diesem Fall gibt es numpy.linspace() ein Tupel mit zwei Elementen zurück (numpy.ndarray, step).

result = np.linspace(0, 10, 5, retstep=True)print(result)# (array([ 0. , 2.5, 5. , 7.5, 10. ]), 2.5)print(type(result))# <class 'tuple'>print(result[0])# [ 0. 2.5 5. 7.5 10. ]print(result[1])# 2.5

Wenn Sie nur den Schritt überprüfen möchten, holen Sie sich das zweite Element mit dem Index.

print(np.linspace(0, 10, 5, retstep=True)[1])# 2.5print(np.linspace(0, 10, 5, retstep=True, endpoint=False)[1])# 2.0

In umgekehrter Reihenfolge umwandeln

Mit numpy.arange() can SIE ein Array in umgekehrter Reihenfolge erhalten, wenn Sie die Argumente richtig angeben, aber das ist problematisch.

print(np.arange(3, 10, 2))# [3 5 7 9]print(np.arange(9, 2, -2))# [9 7 5 3]

Es ist einfach, Slice [::-1] oder numpy.flip() zu verwenden.

print(np.arange(3, 10, 2)[::-1])# [9 7 5 3]print(np.flip(np.arange(3, 10, 2)))# [9 7 5 3]

Im Fall von numpy.linspace() can SIE die Reihenfolge einfach umkehren, indem Sie das erste Argument start und das zweite Argument stop ersetzen. Das Ergebnis ist dasselbe mit Slice [::-1] und numpy.flip().

print(np.linspace(0, 10, 5))# [ 0. 2.5 5. 7.5 10. ]print(np.linspace(10, 0, 5))# [10. 7.5 5. 2.5 0. ]print(np.linspace(0, 10, 5)[::-1])# [10. 7.5 5. 2.5 0. ]print(np.flip(np.linspace(0, 10, 5)))# [10. 7.5 5. 2.5 0. ]

In ein mehrdimensionales Array konvertieren

Weder numpy.arange() noch numpy.linspace() haben Argumente, um die Form anzugeben. Verwenden Sie reshape(), um in ein mehrdimensionales Array zu konvertieren.

print(np.arange(12).reshape(3, 4))# [[ 0 1 2 3]# [ 4 5 6 7]# [ 8 9 10 11]]print(np.arange(24).reshape(2, 3, 4))# [[[ 0 1 2 3]# [ 4 5 6 7]# [ 8 9 10 11]]# # [[12 13 14 15]# [16 17 18 19]# [20 21 22 23]]]
print(np.linspace(0, 10, 12).reshape(3, 4))# [[ 0. 0.90909091 1.81818182 2.72727273]# [ 3.63636364 4.54545455 5.45454545 6.36363636]# [ 7.27272727 8.18181818 9.09090909 10. ]]print(np.linspace(0, 10, 24).reshape(2, 3, 4))# [[[ 0. 0.43478261 0.86956522 1.30434783]# [ 1.73913043 2.17391304 2.60869565 3.04347826]# [ 3.47826087 3.91304348 4.34782609 4.7826087 ]]# # [[ 5.2173913 5.65217391 6.08695652 6.52173913]# [ 6.95652174 7.39130435 7.82608696 8.26086957]# [ 8.69565217 9.13043478 9.56521739 10. ]]]
▷ numpy.arange(), linspace(): Erzeugen von ndarray mit gleichmäßig verteilten Werten | PythonSeminar (2024)

References

Top Articles
Toy Story (1995 Film)/Credits
Despicable Me 2/Credits
Funny Roblox Id Codes 2023
Golden Abyss - Chapter 5 - Lunar_Angel
Www.paystubportal.com/7-11 Login
Joi Databas
Shs Games 1V1 Lol
Evil Dead Rise Showtimes Near Massena Movieplex
Steamy Afternoon With Handsome Fernando
fltimes.com | Finger Lakes Times
Detroit Lions 50 50
18443168434
Newgate Honda
Zürich Stadion Letzigrund detailed interactive seating plan with seat & row numbers | Sitzplan Saalplan with Sitzplatz & Reihen Nummerierung
Grace Caroline Deepfake
978-0137606801
Nwi Arrests Lake County
Missed Connections Dayton Ohio
Justified Official Series Trailer
London Ups Store
Committees Of Correspondence | Encyclopedia.com
Pizza Hut In Dinuba
Jinx Chapter 24: Release Date, Spoilers & Where To Read - OtakuKart
How Much You Should Be Tipping For Beauty Services - American Beauty Institute
Sizewise Stat Login
VERHUURD: Barentszstraat 12 in 'S-Gravenhage 2518 XG: Woonhuis.
Jet Ski Rental Conneaut Lake Pa
Unforeseen Drama: The Tower of Terror’s Mysterious Closure at Walt Disney World
Ups Print Store Near Me
C&T Wok Menu - Morrisville, NC Restaurant
How Taraswrld Leaks Exposed the Dark Side of TikTok Fame
University Of Michigan Paging System
Dashboard Unt
Access a Shared Resource | Computing for Arts + Sciences
2023 Ford Bronco Raptor for sale - Dallas, TX - craigslist
Speechwire Login
Healthy Kaiserpermanente Org Sign On
Restored Republic
Lawrence Ks Police Scanner
3473372961
Everstart Jump Starter Manual Pdf
Moxfield Deck Builder
Senior Houses For Sale Near Me
Jail View Sumter
Birmingham City Schools Clever Login
Thotsbook Com
Funkin' on the Heights
Caesars Rewards Loyalty Program Review [Previously Total Rewards]
Vci Classified Paducah
Www Pig11 Net
Ty Glass Sentenced
Latest Posts
Article information

Author: Dr. Pierre Goyette

Last Updated:

Views: 5645

Rating: 5 / 5 (50 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Dr. Pierre Goyette

Birthday: 1998-01-29

Address: Apt. 611 3357 Yong Plain, West Audra, IL 70053

Phone: +5819954278378

Job: Construction Director

Hobby: Embroidery, Creative writing, Shopping, Driving, Stand-up comedy, Coffee roasting, Scrapbooking

Introduction: My name is Dr. Pierre Goyette, I am a enchanting, powerful, jolly, rich, graceful, colorful, zany person who loves writing and wants to share my knowledge and understanding with you.