1D-Taulukoiden Luontifunktiot
Perinteisen taulukon luonnin lisäksi, jossa määritellään alkiot suoraan, numpy mahdollistaa myös taulukon automaattisen luonnin erityisillä funktioilla. Tässä ovat kaksi yleisintä funktiota, joilla luodaan ainoastaan yksiulotteisia taulukoita:
arange();linspace().
arange()
numpy.arange()-funktio muistuttaa Pythonin sisäänrakennettua range()-funktiota; kuitenkin se palauttaa ndarray-olion. Käytännössä se luo taulukon, jonka alkiot ovat tasavälein annetulla välillä.
Esimerkiksi, jos annettu väli on 0–10 ja askelväli on 2, tuloksena oleva taulukko on: [0, 2, 4, 6, 8].
Tässä ovat kolme tärkeintä parametria ja niiden merkitys:
-
start:- Oletusarvo:
0; - Määrittää taulukon ensimmäisen alkion.
- Oletusarvo:
-
stop:- Ei oletusarvoa;
- Määrittää päätepisteen, jota ei sisällytetä taulukkoon.
-
step:- Oletusarvo:
1; - Määrittää lisäyksen, joka lisätään jokaiseen seuraavaan alkioon.
- Oletusarvo:
12345678910import numpy as np # Creating an array of integers from 0 to 11 exclusive with step=1 array_1 = np.arange(11) print(array_1) # Creating an array of integers from 1 to 11 exclusive with step=1 array_2 = np.arange(1, 11) print(array_2) # Creating an array of integers from 0 to 11 exclusive with step=2 array_3 = np.arange(0, 11, 2) print(array_3)
linspace()
Vaikka arange() voi käsitellä reaalilukuja, numpy.linspace() on suositeltavampi kuin numpy.arange() tähän tarkoitukseen, koska arange() voi tuottaa odottamattomia tuloksia liukulukutarkkuusvirheiden vuoksi askelia laskettaessa. Sen sijaan linspace() tuottaa tietyn määrän tasavälein sijoitettuja pisteitä annetulla välillä, mikä takaa tarkkuuden ja johdonmukaisuuden.
linspace()-funktiossa step-parametrin sijaan käytetään num-parametria, jolla määritellään näytteiden määrä (lukujen määrä) annetulla välillä (oletus on 50).
1234567import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_1 = np.linspace(0, 1, 5) print('Example 1:', array_1) # Generating 7 equally spaced values between -1 and 1 (inclusive) array_2 = np.linspace(-1, 1, 7) print('Example 2:', array_2)
Päätepiste
endpoint-parametri määrittää, sisällytetäänkö stop-arvo. Oletuksena se on True (sisällytetään). Jos se asetetaan arvoon False, stop-arvo jätetään pois, mikä pienentää askelväliä hieman.
Tässä on vertailu array_inclusive- ja array_exclusive-taulukoiden välillä:
1234567import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_inclusive = np.linspace(0, 1, 5) print('Endpoint = True:', array_inclusive) # Generating 5 equally spaced values between 0 and 1 (exclusive) array_exclusive = np.linspace(0, 1, 5, endpoint=False) print('Endpoint = False:', array_exclusive)
Kun endpoint=True, väli [0,1] jaetaan neljään yhtä suureen osaan ja päätepiste (1) sisältyy mukaan, jolloin askelkooksi tulee (1−0)/4=0.25.
Kun endpoint=False, väli [0,1) jaetaan viiteen yhtä suureen osaan, koska päätepiste jätetään pois, jolloin askelkooksi tulee (1−0)/5=0.2.
Swipe to start coding
- Käytä
arange()-funktiota luodaksesieven_numbers-taulukon. - Määritä argumentit luodaksesi parillisten lukujen taulukon väliltä
2–21(21 ei mukana). - Käytä sopivaa funktiota luodaksesi
samples-taulukon, jossa voidaan määrittää arvojen määrä tietyllä välillä. - Määritä kolme ensimmäistä argumenttia luodaksesi taulukon, jossa on
10tasavälistä lukua väliltä5ja6. - Varmista, että
6ei sisällysamples-taulukkoon.
Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 3.7
1D-Taulukoiden Luontifunktiot
Pyyhkäise näyttääksesi valikon
Perinteisen taulukon luonnin lisäksi, jossa määritellään alkiot suoraan, numpy mahdollistaa myös taulukon automaattisen luonnin erityisillä funktioilla. Tässä ovat kaksi yleisintä funktiota, joilla luodaan ainoastaan yksiulotteisia taulukoita:
arange();linspace().
arange()
numpy.arange()-funktio muistuttaa Pythonin sisäänrakennettua range()-funktiota; kuitenkin se palauttaa ndarray-olion. Käytännössä se luo taulukon, jonka alkiot ovat tasavälein annetulla välillä.
Esimerkiksi, jos annettu väli on 0–10 ja askelväli on 2, tuloksena oleva taulukko on: [0, 2, 4, 6, 8].
Tässä ovat kolme tärkeintä parametria ja niiden merkitys:
-
start:- Oletusarvo:
0; - Määrittää taulukon ensimmäisen alkion.
- Oletusarvo:
-
stop:- Ei oletusarvoa;
- Määrittää päätepisteen, jota ei sisällytetä taulukkoon.
-
step:- Oletusarvo:
1; - Määrittää lisäyksen, joka lisätään jokaiseen seuraavaan alkioon.
- Oletusarvo:
12345678910import numpy as np # Creating an array of integers from 0 to 11 exclusive with step=1 array_1 = np.arange(11) print(array_1) # Creating an array of integers from 1 to 11 exclusive with step=1 array_2 = np.arange(1, 11) print(array_2) # Creating an array of integers from 0 to 11 exclusive with step=2 array_3 = np.arange(0, 11, 2) print(array_3)
linspace()
Vaikka arange() voi käsitellä reaalilukuja, numpy.linspace() on suositeltavampi kuin numpy.arange() tähän tarkoitukseen, koska arange() voi tuottaa odottamattomia tuloksia liukulukutarkkuusvirheiden vuoksi askelia laskettaessa. Sen sijaan linspace() tuottaa tietyn määrän tasavälein sijoitettuja pisteitä annetulla välillä, mikä takaa tarkkuuden ja johdonmukaisuuden.
linspace()-funktiossa step-parametrin sijaan käytetään num-parametria, jolla määritellään näytteiden määrä (lukujen määrä) annetulla välillä (oletus on 50).
1234567import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_1 = np.linspace(0, 1, 5) print('Example 1:', array_1) # Generating 7 equally spaced values between -1 and 1 (inclusive) array_2 = np.linspace(-1, 1, 7) print('Example 2:', array_2)
Päätepiste
endpoint-parametri määrittää, sisällytetäänkö stop-arvo. Oletuksena se on True (sisällytetään). Jos se asetetaan arvoon False, stop-arvo jätetään pois, mikä pienentää askelväliä hieman.
Tässä on vertailu array_inclusive- ja array_exclusive-taulukoiden välillä:
1234567import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_inclusive = np.linspace(0, 1, 5) print('Endpoint = True:', array_inclusive) # Generating 5 equally spaced values between 0 and 1 (exclusive) array_exclusive = np.linspace(0, 1, 5, endpoint=False) print('Endpoint = False:', array_exclusive)
Kun endpoint=True, väli [0,1] jaetaan neljään yhtä suureen osaan ja päätepiste (1) sisältyy mukaan, jolloin askelkooksi tulee (1−0)/4=0.25.
Kun endpoint=False, väli [0,1) jaetaan viiteen yhtä suureen osaan, koska päätepiste jätetään pois, jolloin askelkooksi tulee (1−0)/5=0.2.
Swipe to start coding
- Käytä
arange()-funktiota luodaksesieven_numbers-taulukon. - Määritä argumentit luodaksesi parillisten lukujen taulukon väliltä
2–21(21 ei mukana). - Käytä sopivaa funktiota luodaksesi
samples-taulukon, jossa voidaan määrittää arvojen määrä tietyllä välillä. - Määritä kolme ensimmäistä argumenttia luodaksesi taulukon, jossa on
10tasavälistä lukua väliltä5ja6. - Varmista, että
6ei sisällysamples-taulukkoon.
Ratkaisu
Kiitos palautteestasi!
single