Tässä opetusohjelmassa näytetään, miten NumPy max -funktiota käytetään, joka näkyy Python-koodissa nimellä np.max.
Hyvällä tasolla haluan selittää funktion ja näyttää, miten se toimii. Tästä syystä tässä opetusohjelmassa on kaksi pääosiota: NumPy maxin syntaksi ja esimerkkejä NumPy maxin käytöstä.
Jos olet vasta aloittamassa NumPyn käyttöä, suosittelen, että luet koko opetusohjelman alusta loppuun. Tästä huolimatta, jos haluat vain saada nopean vastauksen johonkin kysymykseen, voit hypätä eteenpäin sopivaan osioon jollakin seuraavista linkeistä:
- NumPy maxin syntaksi
- Esimerkkejä NumPy maxin käytöstä
Okei. Tämä kaikki mielessä, aloitetaanpa.
Keskustellaan ensin NumPysta ja NumPy max -funktiosta.
- Lyhyt johdatus NumPy max -funktioon
- Numpy on Python-ohjelmointikielen datankäsittelymoduuli
- Numpy on työkalupakki numeerisen datan kanssa työskentelyyn
- NumPy max laskee NumPy-massan sisältämien arvojen maksimiarvon
- Korkean tason esimerkki siitä, miten np.max toimii
- Numpy.max-funktion syntaksi
- Pikainen huomautus
- Syntaksin selitys
- Np.max:n parametrit
- a (pakollinen)
- axis (valinnainen)
- Pikakatsaus matriisien akseleihin
- Matriisiparametri määrittää akselin, jonka avulla maksimit lasketaan
- out (valinnainen)
- keepdims (valinnainen)
- Esimerkkejä: miten numpy max -funktiota käytetään
- Ajoita tämä koodi ensin
- Import numpy
- Lasketaan yksiulotteisen joukon maksimi
- Kaksiulotteisen matriisin maksimin laskeminen
- Kaksiulotteisen matriisin sarakkeiden maksimiarvojen laskeminen
- Akseliparametri määrittää, mikä akseli halutaan tiivistää
- Compute max with axis = 0
- Lasketaan rivien maksimit akselilla = 1
- How to use the keepdims -parametrin käyttö np.maxin kanssa
- Set keepdims yhtä suuri kuin true (ja pitää samat mitat)
- Toteutetaan np.max uudestaan komennolla keepdims = True
- Jos haluat oppia datatiedettä Pythonilla, opettele NumPy
- Jos haluat lisää Python-datatieteen opetusohjelmia, rekisteröidy sähköpostilistallemme
- Tilaa ILMAISET datatieteen opetusohjelmat
- Tarkista sähköpostilaatikkosi vahvistaaksesi tilauksesi …
Lyhyt johdatus NumPy max -funktioon
Sinulle lienee selvää, että NumPy max -funktio on NumPy-moduulissa oleva funktio.
Mutta jos olet todellinen aloittelija, et ehkä oikeasti tiedä, mikä NumPy on. Joten ennen kuin puhumme nimenomaan np.max-funktiosta, puhutaan nopeasti NumPysta.
Mikä NumPy tarkalleen ottaen on?
Numpy on Python-ohjelmointikielen datankäsittelymoduuli
Yksikertaisesti sanottuna NumPy on Python-ohjelmointikielen datankäsittelypaketti.
Jos sinua kiinnostaa datatiede Pythonilla, NumPy on erittäin tärkeä. Tämä johtuu siitä, että suuri osa datatieteen työstä on yksinkertaisesti datan manipulointia. Riippumatta siitä, teetkö syväoppimista tai data-analyysiä, valtava osa datatieteen työstä on vain datan puhdistamista, datan esikäsittelyä ja sen tutkimista sen varmistamiseksi, että se on käyttökelpoista.
Jälleen kerran, koska datan manipulointi on tärkeää, NumPy on erittäin tärkeä datatieteen kannalta Pythonissa.
Numpy on työkalupakki numeerisen datan kanssa työskentelyyn
Kohtaisesti NumPy tarjoaa kuitenkin joukon työkaluja numeerisen datan kanssa työskentelyyn.
Pythonissa on muitakin työkalupaketteja ei-numeerisen datan ja sekatyyppisen datan kanssa työskentelyyn (kuten Pandas-moduuli). Mutta jos sinulla on mitä tahansa numeerista dataa, jota sinun täytyy siivota, muokata, muokata tai analysoida, NumPy on luultavasti työkalupakki, jota tarvitset.
Vaikka NumPy-funktiot voivat toimia erilaisilla tietorakenteilla, ne on rakennettu toimimaan rakenteella, jota kutsutaan NumPy-matriisiksi. NumPy-määritteet ovat vain erityyppisiä Python-olioita, jotka sisältävät numeerista dataa. NumPy-matriisien luomiseen on erilaisia tapoja, kuten np.array-funktio, np.ones-funktio, np.zeros-funktio ja np.arange-funktio sekä monia muita funktioita, joita on käsitelty aiemmissa opetusohjelmissa täällä Sharp Sightissa.
Tärkeää on, että NumPy-matriisit on optimoitu numeerisia laskutoimituksia varten. NumPy:ssä on siis joukko työkaluja numeeristen laskutoimitusten suorittamiseen NumPy-matriiseilla, kuten NumPy-matriisin keskiarvon laskeminen, NumPy-matriisin mediaanin laskeminen ja niin edelleen.
Vähemmän sanottuna NumPy antaa sinulle työkalupaketin, jolla voit luoda numeerisen datan matriiseja ja suorittaa laskutoimituksia kyseiselle numeeriselle datalle.
Ensimmäinen laskutoimituksista, jonka voit suorittaa, on NumPy-matriisin maksimiarvon laskeminen. Tässä tulee kyseeseen np.max-funktio.
NumPy max laskee NumPy-massan sisältämien arvojen maksimiarvon
Funktio numpy.max()
laskee NumPy-massan sisältämien numeeristen arvojen maksimiarvon. Se voi myös laskea rivien, sarakkeiden tai muiden akselien maksimiarvon. Puhumme siitä esimerkit-osiossa.
Syntaktisesti näet NumPy:n max-funktion usein koodissa nimellä np.max. Näet sen kirjoitettuna näin, kun ohjelmoija on tuonut NumPy-moduulin aliaksella np
.
Lisäksi selvennykseksi kannattaa tietää, että np.max-funktio on sama asia kuin NumPy:n amax-funktio, AKA np.amax. Pohjimmiltaan np.max on alias np.amaxille. Nimeä lukuun ottamatta ne ovat samat.
Korkean tason esimerkki siitä, miten np.max toimii
Myöhemmin tässä opetusohjelmassa näytän konkreettisia esimerkkejä siitä, miten np.max-funktiota käytetään, mutta juuri tässä haluan antaa sinulle karkean käsityksen siitä, mitä se tekee.
Oletetaan esimerkiksi, että sinulla on yksiulotteinen NumPy-matriisi, jossa on viisi arvoa:
Voidaan käyttää NumPy max -funktiota maksimiarvon laskemiseen:
Vaikka tässä esimerkissä näytetään, miten np.max()
-funktio toimii 1-ulotteisella NumPy-massalla, se toimii samalla tavalla 2-ulotteisilla massoilla ja moniulotteisilla massoilla. Näytän tästäkin täydelliset esimerkit tämän opetusohjelman esimerkit-osiossa.
Ennen kuin katsomme koodiesimerkkejä, tarkastellaan kuitenkin lyhyesti np.max-funktion syntaksia ja parametreja.
Numpy.max-funktion syntaksi
Np.max-funktion syntaksi on melko suoraviivainen, vaikkakin muutama funktion parametreista voi olla hiukan sekava.
Tässä kerromme funktion syntaktisesta rakenteesta ja selitän myös tärkeät parametrit.
Pikainen huomautus
Ensimmäinen nopea huomautus ennen kuin aloitamme syntaksin tarkastelun.
Syntaktisesti funktion oikea nimi on numpy.max()
.
Tämän sanottuasi näet usein funktion koodissa muodossa np.max()
.
Miksi?
Yleisesti NumPy-moduulia käyttävän ohjelman alussa ohjelmoijat tuovat NumPy-funktion muodossa np
. Näet ohjelmassa kirjaimellisesti koodirivin, jossa lukee import numpy as np
. Käytännössä tämä tuo NumPy-moduulin aliaksella np
. Tämä antaa ohjelmoijalle mahdollisuuden viitata koodissa NumPy:hen nimellä np
, mikä antaa hänelle mahdollisuuden viitata numpy.max-funktioon nimellä np.max.
Tämän sanottuaan tarkastellaan tarkemmin syntaksia.
Syntaksin selitys
Korkealla tasolla, syntaksi np.max on melko suoraviivainen.
On funktion nimi – np.max()
– ja funktion sisällä on useita parametreja, joiden avulla voimme kontrolloida funktion tarkkaa käyttäytymistä.
Katsotaanpa tarkemmin np.max:n parametreja, sillä parametrien avulla funktiota voidaan todella hienosäätää.
Np.max:n parametrit
Numpy.max-funktiolla on neljä ensisijaista parametria:
a
axis
out
keepdims
Puhutaanpa jokaisesta näistä parametreista erikseen.
a (pakollinen)
Parametrin a
avulla voit määritellä datan, johon np.max-funktio toimii. Pohjimmiltaan se määrittää funktion syötemäärän.
Useissa tapauksissa tämä syötemäärä on oikea NumPy-matriisi. Tämän sanottuaan numpy.max (ja useimmat muut NumPy-funktiot) toimivat millä tahansa ”array like sequence” -datalla. Tämä tarkoittaa, että a
-parametrin argumentti voi olla Python-lista, Python-tuple tai jokin monista muista Python-sekvensseistä.
Muista, että sinun on annettava jotain tähän argumenttiin. Se on pakollinen.
axis (valinnainen)
Parametrin axis
avulla voit määrittää akselin, jolla maksimiarvot lasketaan.
Yhdennetysti sanottuna axis-parametrin avulla voit laskea rivin maksimit ja sarakkeen maksimit.
Kerron tarkemmin, miten tämä tehdään alla olevassa esimerkkiosiossa, mutta selitän nopeasti, miten axis
-parametri toimii.
Pikakatsaus matriisien akseleihin
Korkealla tasolla sinun on ymmärrettävä, että NumPy-matriiseilla on akseleita.
Akselit ovat ikään kuin suuntia NumPy-matriisin varrella. Kaksiulotteisessa matriisissa akseli 0 on akseli, joka osoittaa rivejä alaspäin ja akseli 1 on akseli, joka osoittaa vaakasuunnassa sarakkeiden poikki.
Matriisiparametri määrittää akselin, jonka avulla maksimit lasketaan
Kuinka tämä liittyy axis
-parametrin axis
käyttöön?
Kun käytämme axis
-parametria numpy.max-funktiossa, määrittelemme akselin, jota pitkin maksimit etsitään.
Siten voimme tehokkaasti laskea sarake- ja rivimaksimit.
Näytän, mitä tarkoitan.
Muista, että akseli 0 on akseli, joka osoittaa alaspäin, rivejä alaspäin.
Kun käytämme koodia np.max(axis = 0)
joukossa, käskemme NumPy:tä tehokkaasti laskemaan maksimiarvot kyseisessä suunnassa … akselin 0 suuntaan.
Tehokkaasti, kun asetamme axis = 0
, määrittelemme, että haluamme laskea sarakkeiden maksimiarvot.
Samoin muista, että 2-ulotteisessa arrayssä akseli 1 osoittaa vaakasuoraan. Siksi, kun käytämme NumPy max:ia axis = 1
:n kanssa, ilmoitamme NumPylle, että se laskee maksimit vaakasuunnassa, akselin 1 suunnassa.
Tämä laskee tehokkaasti rivin maksimit.
Näytän konkreettisia koodiesimerkkejä siitä, miten tämä tehdään, myöhemmin esimerkit-osiossa.
Muista, että axis-parametri on valinnainen. Jos et määritä akselia, NumPy max etsii maksimiarvon koko NumPy-massasta.
out (valinnainen)
Out-parametrin avulla voit määrittää erityisen ulostulomassan, johon voit tallentaa np.max:n ulostulon.
Tämän parametrin käyttäminen ei ole tavallista (varsinkaan, jos olet aloittelija), joten emme käsittele sitä opetusohjelmassa.
out
on valinnainen parametri.
keepdims (valinnainen)
Parametri keepdims
on hieman sekava, joten sen ymmärtäminen vaatii hieman vaivannäköä.
Loppujen lopuksi parametri keepdims
pitää tulosteen mitat samoina kuin syötteen mitat.
Ymmärtääksemme, miksi tämä voi olla tarpeellista, tarkastellaan, miten numpy.max-funktio tyypillisesti toimii.
Kun käytät np.max:ia tyypilliseen NumPy-matriisiin, funktio pienentää ulottuvuuksien lukumäärää. Se tiivistää datan.
Yritetään esimerkiksi sanoa, että sinulla on 1-ulotteinen NumPy-matriisi. Käytät NumPy maxia matriisiin.
Kun käytät np.maxia 1-ulotteiseen matriisiin, tuloste on yksi luku. Skalaarinen arvo … ei 1-ulotteinen array.
Välttämättä funktiot, kuten NumPy max (sekä numpy.mediaani, numpy.mean jne.) tiivistävät datan, ja tiivistettäessä dataa nämä funktiot tuottavat tulosteita, joilla on pienempi määrä ulottuvuuksia.
Joskus kuitenkin halutaan, että tulosteilla on sama määrä ulottuvuuksia. Joskus on tilanteita, joissa jos syötteenä on 1-ulotteinen joukko, haluat myös tulosteen olevan 1-ulotteinen joukko (vaikka tulostemassassa olisi vain yksi arvo).
Voit tehdä tämän keepdims
-parametrin avulla.
Oletusarvoisesti keepdims
-parametrin arvoksi on asetettu False
. Oletusarvoisesti (kuten edellä käsiteltiin) tulosteen mitat eivät siis ole samat kuin syötteen mitat. Oletusarvoisesti ulostulon dimensiot ovat pienemmät (koska np.max tiivistää datan).
Mutta jos asetat keepdims = True
, ulostulolla on samat dimensiot kuin syötteellä.
Tämä on hieman abstraktia ilman konkreettista esimerkkiä, joten näytän esimerkin tästä käytöksestä myöhemmin esimerkit-osiossa.
Ja itse asiassa, nyt kun olemme käyneet läpi parametrit, tämä on hyvä paikka aloittaa NumPy max -funktion esimerkkien tarkastelu.
Esimerkkejä: miten numpy max -funktiota käytetään
Tässä osiossa näytän sinulle konkreettisia esimerkkejä NumPy max -funktion käytöstä.
Näytän sinulle useita variaatioita siitä, miten voit löytää joukon maksimiarvon. Näytän, miten löydetään 1-d-määritteen maksimiarvo, miten löydetään 2-d-määritteen maksimiarvo ja miten työskennellään useiden numpy.max:n tärkeiden parametrien kanssa.
Ajoita tämä koodi ensin
Ennen kuin ryhdymme hommiin, sinun on tehtävä joitain alustavia asioita, jotta saat asetukset kuntoon.
Ensiksi sinun on asennettava NumPy kunnolla tietokoneellesi.
Import numpy
Toiseksi sinun on tuotava NumPy työympäristöösi.
Voit tuoda NumPy:n seuraavalla koodilla:
import numpy as np
Huomaa, että olemme tuoneet NumPy:n muodossa np
. Tämä tarkoittaa, että viittaamme NumPy:hen koodissamme aliaksella np
.
Okei, nyt kun tämä on valmis, katsotaanpa muutamia esimerkkejä.
Lasketaan yksiulotteisen joukon maksimi
Aloitetaan yksinkertaisesta.
Tässä laskemme 1-ulotteisen NumPy-matriisin maksimiarvon.
Tehdäksemme tämän, luomme ensin vain 1-ulotteisen matriisin, joka sisältää joitakin satunnaisia kokonaislukuja. Tämän matriisin luomiseen käytämme numpy.random.randint()
-funktiota. Muista, että sinun on käytettävä np.random.seed()
-funktiota, jotta NumPy-massasi on samoja kokonaislukuja kuin tässä esimerkissä olevat kokonaisluvut.
np.random.seed(22)np_array_1d = np.random.randint(size = 5, low = 0, high = 99)
Tämä syntaksi luo 1-d-massan nimeltä np_array_1d
.
Voidaan tulostaa np_array_1d
käyttämällä print()
-funktiota.
print(np_array_1d)
Ja tässä on tuloste:
Silmämääräisesti voimme tunnistaa maksimiarvon, joka on 84
.
Mutta tehdään se koodin avulla.
Tässä laskemme NumPy-massamme maksimiarvon käyttämällä np.max()
-funktiota.
np.max(np_array_1d)
Joka tuottaa seuraavan tuloksen:
84
Tämä on äärimmäisen yksinkertainen esimerkki, mutta se havainnollistaa tekniikkaa. On selvää, että kun matriisin pituus on vain 5 nimikettä, voit tarkastella matriisia silmämääräisesti ja löytää maksimiarvon. Mutta tämä tekniikka toimii, jos sinulla on matriisi, jossa on tuhansia arvoja (tai enemmän!).
Kaksiulotteisen matriisin maksimin laskeminen
Lasketaan seuraavaksi kaksiulotteisen matriisin maksimi.
Tätä varten tarvitsemme luonnollisesti 2-ulotteisen array:n, joten luomme ensin 2-ulotteisen NumPy-massan.
Luodaksemme 2-ulotteisen array:n käytämme funktiota np.random.choice(). Pohjimmiltaan tämä funktio arpoo satunnaisotoksen kokonaisluvuista välillä 0-8 ilman korvausta. Kun np.random.choice() on suoritettu, käytämme reshape()-metodia muotoillaksemme kokonaisluvut 2-ulotteiseksi arrayksi, jossa on 3 riviä ja 3 saraketta.
np.random.seed(1)np_array_2d = np.random.choice(9, 9, replace = False).reshape((3,3))
Katsotaanpa tulostamalla joukko, np_array_2d
.
print(np_array_2d)
]
Kuten näet, kyseessä on 2-ulotteinen joukko, jossa on 3 riviä ja 3 saraketta. Se sisältää kokonaislukuja 0-8, jotka on järjestetty satunnaisesti matriisiin.
Lasketaan nyt array:n maksimiarvo:
np.max(np_array_2d)
Joka tuottaa seuraavan tuloksen:
8
Tämä on hyvin yksinkertainen esimerkki, mutta voit käyttää tätä paljon suuremmalla 2D-massalla, ja se toimii samalla tavalla. Kun opit käyttämään tätä tekniikkaa, kokeile sitä suuremmilla joukoilla!
Tehdään seuraavaksi jotain monimutkaisempaa.
… Seuraavissa esimerkeissä laskemme sarakkeiden maksimiarvot ja rivien maksimiarvot.
Kaksiulotteisen matriisin sarakkeiden maksimiarvojen laskeminen
Ensiksi: laskemme matriisin sarakkeiden maksimiarvot.
Tehdäksemme tämän, meidän täytyy käyttää parametria axis
. Tarkemmin sanottuna meidän on asetettava axis = 0
numpy.max-funktion sisällä.
Katsotaan nopeasti läpi, miksi.
Akseliparametri määrittää, mikä akseli halutaan tiivistää
Muista, että NumPy-matriiseilla on akseleita, ja että akselit ovat ikään kuin suuntia pitkin matriisia. Kaksiulotteisessa matriisissa akseli 0 on akseli, joka osoittaa alaspäin, ja akseli 1 on akseli, joka osoittaa vaakasuoraan.
Voimme käyttää näitä akseleita määritelläksemme suunnan, jota pitkin käytämme np.max:ia.
Tulkitaan siis, että haluaisimme laskea sarakkeiden maksimiarvot. Tämä vastaa keskiarvojen laskemista alaspäin.
Välttämättä sarakkeiden maksimiarvojen laskemiseksi meidän on laskettava maksimiarvot akselin 0 suunnassa.
Compute max with axis = 0
Näytän, miten.
Tässä luomme uudestaan kaksiulotteisen NumPy-massamme. Tämä on sama kuin 2-d NumPy-määrite, jonka loimme edellisessä esimerkissä, joten jos olet jo suorittanut tuon koodin, sinun ei tarvitse suorittaa sitä uudestaan.
np.random.seed(1)np_array_2d = np.random.choice(9, 9, replace = False).reshape((3,3))
Ja voimme tulostaa sen:
print(np_array_2d)
]
Jälleen kerran, tämä on 2-d-määrite, jossa on 3 riviä ja 3 saraketta. Se sisältää kokonaislukuja 0-8, jotka on järjestetty satunnaisesti matriisiin.
Lasketaan nyt sarakkeen maksimit käyttämällä numpy.max:ia, jossa on axis = 0
.
# CALCULATE COLUMN MAXIMAnp.max(np_array_2d, axis = 0)
Joka tuottaa seuraavan tulostemäärän:
array()
Arvioidaan, mitä tässä tapahtui.
Asettamalla axis = 0
määrittelimme, että haluamme NumPy.max-funktion laskevan maksimiarvot alaspäin akselia 0 pitkin.
Se on melko suoraviivaista, kunhan ymmärrät NumPy:n akseleita ja sitä, miten ne toimivat NumPy:n funktioissa.
Lasketaan rivien maksimit akselilla = 1
Voidaan vastaavasti laskea rivien maksimit asettamalla parametrin axis
arvoksi axis = 1
.
Tässä on koodi, jolla luodaan taas 2-d dataset:
np.random.seed(1)np_array_2d = np.random.choice(9, 9, replace = False).reshape((3,3))
print(np_array_2d)
]
Ja nyt lasketaan rivin maksimit:
np.max(np_array_2d, axis = 1)
Ja saadaan seuraava tuloste:
array()
Tässä pitäisi olla järkeä, jos olet jo lukenut ja ymmärtänyt edelliset esimerkit.
Kun asetamme axis = 1
, käskemme numpy.max-ohjelmaa laskemaan maksimiarvot akseli-1-suunnassa. Koska akseli 1 on akseli, joka kulkee vaakasuunnassa arraya pitkin, tämä laskee tehokkaasti maksimiarvot 2-d arrayn rivejä pitkin:
Tämä on taas melko suoraviivaista, kunhan vain todella ymmärrät NumPyn array-akseleita. Jos sinulla on vielä vaikeuksia akselien ymmärtämisessä, suosittelen, että luet NumPy-matriisien akseleita käsittelevän opetusohjelmamme.
How to use the keepdims -parametrin käyttö np.maxin kanssa
Viimeiseksi tarkastellaan keepdims
-parametrin käyttöä.
Etukäteen selitän, miksi tarvitsemme sitä.
Kuten aiemmin totesin, NumPyn max-funktio tiivistää datan, kun sitä käytetään. Itse asiassa monet NumPy-funktiot, jotka laskevat yhteenvetotilastoja (kuten np.mean, np.median, np.min jne.) tiivistävät dataa jo luonteensa vuoksi. Kun lasket yhteenvetotilastoa, olet määritelmällisesti tiivistämässä dataa.
Tällä on tärkeitä seurauksia, jotka liittyvät datan ulottuvuuksiin.
Kun tiivistät dataa funktiolla kuten numpy.max, funktion ulostulolla on pienempi määrä ulottuvuuksia.
Lasketaan esimerkiksi 2-ulotteisen matriisin maksimiarvo. Jos käytät numpy.max-funktiota tähän 2-ulotteiseen arrayyn (ilman axis
-parametria), niin tuloste on yksi luku, skalaari. Skalaareilla on nolla ulottuvuutta. Kaksi ulottuvuutta sisään, nolla ulottuvuutta ulos.
NumPy max -funktio pienentää tehokkaasti ulottuvuuksia syötteen ja tuloksen välillä.
Joskus et kuitenkaan halua pienennettyä ulottuvuusmäärää. Saattaa olla tilanteita, joissa tarvitset, että ulostulolla on teknisesti samat mitat kuin syötteellä (vaikka ulostulo olisikin yksittäinen luku).
Voit pakottaa tuon käyttäytymisen käyttämällä keepdims
-parametria.
Set keepdims yhtä suuri kuin true (ja pitää samat mitat)
Parametrin keepdims
oletusarvoksi on asetettu False
. Kuten juuri selitin, tämä tarkoittaa, että tulosteella ei tarvitse olla oletusarvoisesti samoja mittoja kuin syötteellä.
Mutta jos asetat parametrin keepdims = True
, tämä pakottaa ulostulolla olemaan sama määrä ulottuvuuksia kuin syötteellä.
Tämä saattaa hämmentää sinua, joten katsotaanpa vankka esimerkki.
Luotaan ensin vain kaksiulotteinen matriisi.
Tämä on sama matriisi, jonka loimme jo aiemmin, joten jos olet jo suorittanut tämän koodin, sinun ei tarvitse suorittaa sitä uudelleen. Pohjimmiltaan tämä koodi luo 2-d-määrän, jossa on numerot 0-8, jotka on järjestetty satunnaisesti 3 x 3-määrään.
np.random.seed(1)np_array_2d = np.random.choice(9, 9, replace = False).reshape((3,3))
Katsotaanpa selvyyden vuoksi tulostamalla se:
print(np_array_2d)
Ja tässä on matriisi:
]
Jälleen kerran, tämä matriisi sisältää vain kokonaisluvut 0-8, jotka on järjestetty satunnaisesti 3-by-3 NumPy-matriisiin.
Ja kuinka monta ulottuvuutta sillä on?
Se on sinulle varmaan itsestäänselvää, mutta voimme hakea ulottuvuuksien määrän suoraan poimimalla ndim
-attribuutin matriisista.
np_array_2d.ndim
Ja tämä kertoo meille ulottuvuuksien määrän:
2
Siten np_array_2d
on kaksiulotteinen matriisi.
Lasketaan nyt np.max:n avulla array:n maksimiarvo.
np.max(np_array_2d)
Maksimiarvo on 8
.
Ja montako ulottuvuutta tulosteessa on? Voimme tarkistaa sen viittaamalla np.max()
-funktion np.max()
lopussa olevaan ndim
-attribuuttiin:
np.max(np_array_2d).ndim
Miten monta ulottuvuutta ulostulolla on?
0
.
Np.max:n ulostulo on maksimiarvo (8), joka on skalaari. Tällä skalaarilla on nolla ulottuvuutta.
Toteutetaan np.max uudestaan komennolla keepdims = True
Toteutetaan nyt koodi uudestaan komennolla keepdims = True
.
np.max(np_array_2d, keepdims = True)
Joka tuottaa seuraavan tulosteen:
array(])
Ja tarkistetaan mitat:
np.max(np_array_2d, keepdims = True).ndim
2
Tässä, kun ajamme np.max:n np_array_2d
:llä keepdims = True
:n kanssa, tulosteessa on kaksi ulottuvuutta.
Pitäkää mielessä, että maksimiarvo on sama: 8
. Tuloksen ulottuvuudet ovat vain erilaiset. Asettamalla keepdims = True
muutamme tulosteen rakennetta … sen sijaan, että tuloste olisi skalaari, se on itse asiassa 2-d NumPy-matriisi, jossa on yksi arvo (8
).
Jos haluat oppia datatiedettä Pythonilla, opettele NumPy
Jos olet lukenut muita opetusohjelmia täällä Sharp Sight data science -blogissa, tiedät kuinka tärkeää datan manipulointi on.
Jos olet tosissasi oppimassa datatiedettä, sinun on todella hallittava datan manipuloinnin perusteet. Valtava osa datatieteen työnkulusta on juuri syöttötietojen puhdistamista ja manipulointia.
Jos työskentelet Pythonilla, yksi olennainen taito, joka sinun on silloin osattava, on NumPy. Numpy on ratkaisevan tärkeä datan puhdistamisessa, manipuloinnissa ja tutkimisessa.
Jos haluat oppia datatiedettä Pythonilla, opettele NumPy ja opettele se hyvin.
Jos haluat lisää Python-datatieteen opetusohjelmia, rekisteröidy sähköpostilistallemme
Jos haluat oppia NumPy:tä ja datatiedettä Pythonissa, rekisteröidy sähköpostilistallemme.
Täällä Sharp Sight -blogissa julkaisemme säännöllisesti datatieteen opetusohjelmia.
Kun rekisteröidyt, saat ilmaisia opetusohjelmia seuraavista aiheista:
- NumPy
- Pandas
- Base Python
- Scikit learn
- Koneellinen oppiminen
- Syvällinen oppiminen
- ………………………………………………………………………….
Kun julkaisemme opetusohjelmia, lähetämme ne suoraan postilaatikkoosi.
Haluatko oppia datatiedettä Pythonilla? Rekisteröidy nyt.