numpy — numpy-yhteensopivat taulukko-operaatiot

ulab-moduulin numpy-alimoduuli tarjoaa numpy-yhteensopivan API:n, joka rakentuu n-ulotteisen taulukkotyypin ndarray ympärille. Se toteuttaa huolellisesti valitun osajoukon CPythonin numpy-kirjastosta: taulukoiden luonnin, alkioittaisen matematiikan, redusoinnit ja tilastot, lineaarialgebran, FFT:t, satunnaislukujen generoinnin, polynomien sovituksen ja perus-I/O:n.

Alimoduuli tuodaan tavanomaisesti nimellä np

from ulab import numpy as np

a = np.array([1, 2, 3, 4], dtype=np.float)
b = np.linspace(0, 1, num=5)
c = np.dot(a.reshape((2, 2)), a.reshape((2, 2)))

Jokainen dtype-argumentti on yksi moduulitasolla näkyvistä kokonaislukukonstanteista: numpy.bool, numpy.uint8, numpy.int8, numpy.uint16, numpy.int16 ja numpy.float (oletus). Tulostyyppi ndarray viittaa numpy.ndarray-tyyppiin.

Alimoduulit

luokka ndarray — n-ulotteinen taulukko

ndarray on n-ulotteinen, dtype-tietoinen säiliö, joka muodostaa numpy- / ulab-kirjastojen ytimen. Data tallennetaan yhtenäiseen lohkoon, jonka tulkinta kuvataan pienellä otsikolla (dtype, shape, strides, ndim, itemsize). Monet operaatiot – reshape, transpose, viipalointi – vain muokkaavat tätä otsikkoa ja ovat siksi erittäin edullisia; metodit, jotka varaavat uutta muistia (copy, flatten, useimmat aritmeettiset operaatiot), palauttavat uuden tiheän taulukon.

Sama tyyppi on tavoitettavissa nimillä ulab.ndarray, numpy.ndarray ja (tällä sivulla) yksinkertaisesti ndarray.

class numpy.ndarray(values: ndarray | bytes | list | tuple, *, dtype: int = numpy.float)

Luo uusi ndarray.

Parametrit:
  • values – Lähdedata. Joko toinen ndarray (joka kopioidaan syvällisesti tyyppimuunnoksineen, jos dtype eroaa) tai mikä tahansa MicroPython-iteroitava. Sisäkkäiset iteroitavat tuottavat moniulotteisia taulukoita; sisempien iteroitavien on kaikkien oltava saman pituisia, muutoin nostetaan ValueError.

  • dtype – Uuden taulukon alkiotyyppi. Yksi numpy-moduulin paljastetuista tyyppikoodi-kokonaisluvuista (numpy.bool, numpy.uint8, numpy.int8, numpy.uint16, numpy.int16 ja numpy.float) tai dtype-instanssi. Oletusarvo on numpy.float.

Tehdasfunktio numpy.array on tavanomainen tapa luoda ndarray; se välittää kutsun tälle konstruktorille.

byteswap(*, inplace: bool = False) ndarray

Vaihtaa jokaisen alkion tavujärjestyksen. uint16-, int16- ja float-taulukoissa tämä kääntää kunkin alkion tavujärjestyksen, mikä on hyödyllistä käytettäessä dataa oheislaitteista, joiden tavujärjestys ei vastaa mikrokontrollerin tavujärjestystä. Yksitavuisille tyypeille (bool, uint8, int8) tämä on no-op, joka palauttaa näkymän tai kopion.

Jos inplace on False (oletus), palautetaan uusi ndarray ja alkuperäinen jätetään koskemattomaksi. Jos inplace on True, self-objektin tavut vaihdetaan paikallaan ja palautetaan näkymä self-objektista.

copy() ndarray

Palauta uusi tiheä, syvä kopio taulukosta. Kopio omistaa oman datansa; sen muokkaaminen ei vaikuta alkuperäiseen.

flatten(*, order: str = 'C') ndarray

Palauta uusi yksiulotteinen kopio taulukosta.

Parametrit:

order'C' (oletus) käy datan läpi C-järjestyksessä (viimeinen akseli vaihtuu nopeimmin); 'F' käy sen läpi Fortran-järjestyksessä (ensimmäinen akseli vaihtuu nopeimmin).

reshape(shape: int | tuple[int, ...]) ndarray

Palauta taulukosta näkymä uudella muodolla. Alkioiden kokonaismäärän on pysyttävä muuttumattomana, muutoin nostetaan ValueError. Käytettävissä vain kun ULAB_MAX_DIMS > 1. Vastaa sijoittamista attribuuttiin shape.

sort(*, axis: int | None = -1) None

Lajittele taulukko paikallaan.

Parametrit:

axis – Akseli, jota pitkin lajitellaan. -1 (oletus) lajittelee viimeistä akselia pitkin; None litistää taulukon ensin ja lajittelee sitten.

tobytes() bytearray

Palauta bytearray, joka aliasoi taulukon taustalla olevan datapuskurin. Kirjoitukset palautetun bytearray-objektin kautta muokkaavat taulukkoa paikallaan. Nostaa ValueError-poikkeuksen, jos taulukko ei ole tiheä (esim. viipaloitu näkymä).

tolist() list

Palauta taulukon sisältö (mahdollisesti sisäkkäisenä) Python-list-objektina. Sisäkkäisyyden syvyys vastaa attribuuttia ndim.

transpose() ndarray

Palauta taulukon transpoosi (akselit käännettyinä). Yksiulotteisille taulukoille tämä palauttaa self. Käytettävissä vain kun ULAB_MAX_DIMS > 1. Attribuutti T on lyhennys tälle metodille.

dtype: dtype | int

Taulukon alkioiden tietotyyppi. Palauttaa dtype-ilmentymän, kun laiteohjelmisto on käännetty ULAB_HAS_DTYPE_OBJECT käytössä, muutoin taustalla olevan yksimerkkisen tyyppikoodin kokonaislukuna.

flat: flatiter

Litteä iteraattori, joka tuottaa taulukon jokaisen alkion C-järjestyksessä. Toisin kuin flatten(), flat-iteroinnissa ei varata uutta taulukkoa.

itemsize: int

Yksittäisen taulukkoalkion koko tavuina, johdettuna attribuutista dtype.

ndim: int

Taulukon ulottuvuuksien määrä (attribuutin shape pituus).

shape: tuple[int, ...]

Taulukon pituudet kunkin akselin suunnassa. Monikon sijoittaminen attribuuttiin shape muokkaa taulukon muodon paikallaan (vastaa metodia reshape()).

size: int

Taulukon alkioiden kokonaismäärä (attribuutin shape tulo).

strides: tuple[int, ...]

Tavujen määrä, jonka verran muistissa siirrytään kunkin akselin suunnassa seuraavaan alkioon kyseisellä akselilla.

T: ndarray

Taulukon transpoosi; vastaa metodia transpose().

Tuetut operaattorit

ndarray-instanssit tukevat seuraavia operaattoreita. Binäärioperaattorit lähettävät operandinsa noudattaen numpyn standardeja lähetyssääntöjä ja noudattavat numpyn ylennyssääntöjä (esim. uint8 + int8 => int16, uint16 + int16 => float).

Aritmetiikka (binäärinen): +, -, *, /, //, %, **. Myös reflektoidut (oikeakätiset) operandit ja paikalliset variantit +=, -=, *=, /=, %=, **= ovat tuettuja. Sekä ndarray-ja-ndarray- että ndarray-ja-skalaari-muodot hyväksytään.

Vertailu: ==, !=, <, <=, >, >=. Kukin palauttaa lähetetyn muodon (broadcast) mukaisen totuusarvoisen ndarray-taulukon.

Bittioperaatiot (vain kokonaislukutaulukot): &, |, ^. Näiden soveltaminen float-taulukkoon aiheuttaa TypeError-poikkeuksen.

Unaariset: + (palauttaa kopion), - (negaatio; etumerkittömillä dtype-tyypeillä arvot kiertyvät modulo \(2^N\)), abs() (alkioittainen itseisarvo; etumerkittömillä dtype-tyypeillä palauttaa kopion ilman laskentaa), ~ (bittikohtainen inversio, vain kokonaislukutyypit), len() (palauttaa ensimmäisen akselin pituuden).

Indeksointi ja viipalointi: a[i], a[i, j, ...], a[start:stop:step], totuusarvomaskilla indeksointi (a[mask]) ja kokonaislukutaulukolla (fancy) indeksointi ovat kaikki tuettuja sekä luvuissa että kirjoituksissa.

Iterointi: ndarray-taulukon iterointi tuottaa alitaulukoita ensimmäistä akselia pitkin (yksi alkio kerrallaan 1-ulotteisille taulukoille). Käytä attribuuttia flat iteroidaksesi jokaisen skalaarialkion yli ulottuvuudesta riippumatta.

Matriisikertolasku-operaattoria @ ei ole toteutettu; käytä sen sijaan funktiota numpy.dot (np.dot(a, b)).

Siirto-operaattoreita (<<, >>) ei ole toteutettu operaattoritasolla. Käytä funktioita numpy.left_shift ja numpy.right_shift alkioittaisiin kokonaislukusiirtoihin.

Taulukoiden luonti

numpy.array(values: ndarray | list | tuple, *, dtype: int = float) ndarray

Rakenna uusi ndarray lukujen sisäkkäisestä iteroitavasta. Vastaava vaihtoehtoinen konstruktori tyypille numpy.ndarray.

numpy.arange(start: int | float, stop: int | float | None = None, step: int | float = 1, *, dtype: int | None = None) ndarray

Palauta tasavälisiä arvoja puoliavoimella välillä [start, stop). Jos vain yksi positionaalinen argumentti annetaan, sitä käsitellään stop-arvona ja start = 0. Jos dtype jätetään pois, se päätellään syötteistä (kokonaisluku jos kaikki start, stop, step ovat kokonaislukuja ja sallitulla alueella).

numpy.asarray(a: ndarray | list | tuple, *, dtype: int | None = None) ndarray

Jos a on jo ndarray, jonka dtype vastaa dtype-arvoa (tai dtype on None), palauta a muuttumattomana; muutoin luo uusi taulukko (pyydetyllä dtype-muunnoksella, jos annettu). Iteroitavat muunnetaan kuten funktiossa numpy.array.

numpy.concatenate(arrays: tuple, *, axis: int = 0) ndarray

Yhdistä ndarray-taulukoiden jono olemassa olevaa axis-akselia pitkin. Kaikkien syötetaulukoiden on jaettava sama dtype, ndim ja muoto jokaisella muulla akselilla kuin axis.

numpy.diag(a: ndarray, *, k: int = 0) ndarray

Kaksiulotteiselle a-taulukolle palauta 1-ulotteinen taulukko, joka sisältää k:nnen lävistäjän. Yksiulotteiselle a-taulukolle palauta 2-ulotteinen neliötaulukko, jossa a on sijoitettu k:nnelle lävistäjälle. k voi olla positiivinen (päälävistäjän yläpuolella) tai negatiivinen (alapuolella).

numpy.empty(shape: int | tuple[int, ...], *, dtype: int = float) ndarray

Alias funktiolle zeros; palauttaa nollilla täytetyn taulukon muotoa shape ja tyyppiä dtype. (ulab ei jätä puskuria alustamatta.)

numpy.eye(N: int, M: int | None = None, k: int = 0, *, dtype: int = float) ndarray

Palauta 2-ulotteinen N x M -taulukko (neliö N x N, jos M on None), jossa on ykkösiä k:nnella lävistäjällä ja nollia muualla.

numpy.frombuffer(buffer: bytes, *, dtype: int = float, count: int = -1, offset: int = 0) ndarray

Tulkitse puskuriprotokollaa noudattava objekti dtype-tyypin dtype 1-ulotteisena ndarray-taulukkona. count on luettavien alkioiden määrä (-1 lukee kaikki saatavilla olevat alkiot); offset ohittaa kyseisen määrän tavuja puskurin alusta.

numpy.full(shape: int | tuple[int, ...], fill_value: int | float | bool, *, dtype: int = float) ndarray

Palauta uusi taulukko muotoa shape ja tyyppiä dtype, jossa jokainen alkio on asetettu arvoon fill_value.

numpy.linspace(start: float, stop: float, num: int = 50, *, endpoint: bool = True, retstep: bool = False, dtype: int = float) ndarray | tuple[ndarray, float]

Palauttaa num tasavälein sijoitettua näytettä suljetulla välillä [start, stop] (tai puoliavoimella, jos endpoint on False). Kun retstep on True, palautetaan tupletti (samples, step).

numpy.logspace(start: float, stop: float, num: int = 50, *, base: float = 10.0, endpoint: bool = True, dtype: int = float) ndarray

Palauta num tasavälistä näytettä logaritmisella asteikolla: tulos alkaa arvosta base ** start ja päättyy arvoon base ** stop.

numpy.meshgrid(*xi: ndarray, indexing: str = 'xy') tuple[ndarray, ...]

Palauta monikko koordinaattimatriiseja yksiulotteisten koordinaattitaulukoiden jonosta. Arvolla indexing 'xy' (oletus) kahta ensimmäistä syötettä käsitellään karteesisina koordinaatteina ja niiden tulosakselit vaihdetaan keskenään; arvolla 'ij' käytetään matriisityylistä indeksointia. Toteutus vastaa NumPyn vastinetta arvoilla copy=True ja sparse=False.

numpy.ones(shape: int | tuple[int, ...], *, dtype: int = float) ndarray

Palauta uusi ykkösillä täytetty taulukko muotoa shape ja tyyppiä dtype.

numpy.zeros(shape: int | tuple[int, ...], *, dtype: int = float) ndarray

Palauta uusi nollilla täytetty taulukko muotoa shape ja tyyppiä dtype.

Tarkastelu / tulostus

numpy.get_printoptions() dict

Palauta taulukon nykyiset tulostusasetukset sanakirjana, jonka avaimet ovat threshold ja edgeitems.

numpy.set_printoptions(*, threshold: int | None = None, edgeitems: int | None = None) None

Aseta taulukon tulostusasetukset. threshold on kokonaisuudessaan tulostettavien taulukkoalkioiden enimmäismäärä; edgeitems on akselin kummassakin päässä näytettävien alkioiden määrä, kun taulukko tiivistetään.

numpy.ndinfo(array: ndarray) None

Tulosta diagnostista tietoa (muoto, askeleet, dtype, itemsize, …) taulukosta array.

numpy.size(a: ndarray, *, axis: int | None = None) int

Palauta a-taulukon alkioiden määrä akselilla axis; jos axis on None, palauta alkioiden kokonaismäärä (attribuutin ndarray.shape tulo).

Vertailu

numpy.clip(a: ndarray | int | float, a_min: ndarray | int | float, a_max: ndarray | int | float) ndarray | int | float

Leikkaa a-taulukon arvot niin, että a_min <= result <= a_max. Vastaa lauseketta maximum(a_min, minimum(a, a_max)); lähetys (broadcast) noudattaa samoja sääntöjä kuin minimum.

numpy.equal(x1: ndarray | int | float, x2: ndarray | int | float) ndarray | bool

Alkioittainen x1 == x2; palauttaa totuusarvoisen ndarray-taulukon (tai bool-skalaarin, jos molemmat syötteet ovat skalaareja). Tarjottu siirrettävyyden vuoksi – ==-operaattori taulukoilla antaa saman tuloksen.

numpy.not_equal(x1: ndarray | int | float, x2: ndarray | int | float) ndarray | bool

Alkioittainen x1 != x2; funktion equal totuusarvoinen vastine.

numpy.isfinite(x: ndarray | int | float) ndarray | bool

Palauta totuusarvotaulukko (tai -skalaari), joka on True siellä, missä syöte on äärellinen. Kokonaislukusyötteet ovat aina äärellisiä.

numpy.isinf(x: ndarray | int | float) ndarray | bool

Palauta totuusarvotaulukko (tai -skalaari), joka on True siellä, missä syöte on ääretön. Kokonaislukusyötteet eivät ole koskaan äärettömiä.

numpy.maximum(x1: ndarray | int | float, x2: ndarray | int | float) ndarray | int | float

Kahden taulukon / skalaarin alkioittainen maksimi. Argumentit lähetetään (broadcast) yhteen; jos dtype-tyypit eroavat, tulos korotetaan ylöspäin.

numpy.minimum(x1: ndarray | int | float, x2: ndarray | int | float) ndarray | int | float

Kahden taulukon / skalaarin alkioittainen minimi; funktion maximum vastine.

numpy.nonzero(a: ndarray) tuple[ndarray, ...]

Palauta monikko ndarray-taulukoita, yksi a-taulukon kutakin ulottuvuutta kohti, jotka sisältävät a-taulukon nollasta poikkeavien alkioiden indeksit.

numpy.where(condition: ndarray | int | float, x: ndarray | int | float, y: ndarray | int | float) ndarray

Palauta ndarray, jonka alkiot tulevat x-taulukosta siellä, missä condition on tosi, ja muutoin y-taulukosta. Kolme syötettä lähetetään (broadcast) yhteen; tuloksen dtype on x- ja y-tyyppien ylöskorotus.

Numeeriset redusoinnit

numpy.all(a: ndarray | list | tuple, *, axis: int | None = None) ndarray | bool

Testaa, ovatko kaikki axis-akselin alkiot arvoltaan True. Arvolla axis=None (oletus) testataan litistetty taulukko ja palautetaan yksi bool.

numpy.any(a: ndarray | list | tuple, *, axis: int | None = None) ndarray | bool

Testaa, onko jokin axis-akselin alkio arvoltaan True. Arvolla axis=None testataan litistetty taulukko.

numpy.argmax(a: ndarray | list | tuple, *, axis: int | None = None) ndarray | int

Palauta maksimialkion indeksi axis-akselilla. Arvolla axis=None taulukko litistetään ja palautetaan yksi kokonaisluku.

numpy.argmin(a: ndarray | list | tuple, *, axis: int | None = None) ndarray | int

Palauta minimialkion indeksi axis-akselilla. Arvolla axis=None taulukko litistetään ja palautetaan yksi kokonaisluku.

numpy.argsort(a: ndarray, *, axis: int = -1) ndarray

Palauta etumerkitön kokonaislukuindeksi-ndarray, jonka alkiot lajittelevat a-taulukon nousevaan järjestykseen axis-akselia pitkin. Tuloksen dtype on uint16, joten mikään akseli ei saa ylittää 65535 alkiota. axis=None ei ole tuettu.

numpy.cross(a: ndarray, b: ndarray) ndarray

Palauta kahden 3-pituisen 1-ulotteisen taulukon ristitulo.

numpy.diff(a: ndarray, *, n: int = 1, axis: int = -1) ndarray

Palauta a-taulukon n:s diskreetti eteenpäin-differenssi axis-akselia pitkin. n:n on oltava välillä 0..9 (differensiointistensiili tallennetaan int8-tyyppiin); axis-akselin pituus pienenee n:llä. numpyn prepend- ja append-avainsanoja ei ole toteutettu.

numpy.flip(a: ndarray, *, axis: int | None = None) ndarray

Palauta uusi taulukko, jossa alkioiden järjestys on käännetty axis-akselia pitkin; arvolla axis=None taulukko käännetään jokaisen akselin suunnassa.

numpy.max(a: ndarray | list | tuple, *, axis: int | None = None, keepdims: bool = False) ndarray | int | float

Palauta maksimialkio axis-akselilla. Arvolla axis=None (oletus) litistetty taulukko redusoidaan skalaariksi. numpyn out-avainsanaa ei ole toteutettu.

numpy.min(a: ndarray | list | tuple, *, axis: int | None = None, keepdims: bool = False) ndarray | int | float

Palauta minimialkio axis-akselilla; funktion max vastine.

numpy.mean(a: ndarray | list | tuple, *, axis: int | None = None, keepdims: bool = False) ndarray | float

Palauta aritmeettinen keskiarvo axis-akselilla. Arvolla axis=None (oletus) litistetyn taulukon keskiarvo palautetaan float-tyyppisenä.

numpy.median(a: ndarray, *, axis: int | None = None) ndarray | float

Palauta mediaani axis-akselilla. Arvolla axis=None taulukko litistetään ensin. Tuloksen dtype on aina float.

numpy.roll(a: ndarray, shift: int, *, axis: int | None = None) ndarray

Palauta a, jonka alkiot on rullattu (syklisesti siirretty) shift paikkaa. Arvolla axis=None (oletus) taulukko litistetään ensin. Negatiiviset siirrot rullaavat vastakkaiseen suuntaan.

numpy.sort(a: ndarray, *, axis: int = -1) ndarray

Palauta a-taulukon lajiteltu kopio axis-akselia pitkin käyttäen kekolajittelua. Arvolla axis=None taulukko litistetään ensin. numpyn kind- ja order-avainsanoja ei ole toteutettu.

numpy.std(a: ndarray | list | tuple, *, axis: int | None = None, ddof: int = 0, keepdims: bool = False) ndarray | float

Palauta keskihajonta axis-akselilla. ddof on delta-vapausasteet – käytetty jakaja on N - ddof.

numpy.sum(a: ndarray | list | tuple, *, axis: int | None = None, keepdims: bool = False) ndarray | int | float

Palauta summa axis-akselilla. Arvolla axis=None litistetyn taulukon kokonaissumma palautetaan skalaarina.

Tilastot

numpy.bincount(x: ndarray, *, weights: ndarray | None = None, minlength: int | None = None) ndarray

Laske kunkin arvon esiintymien määrä yksiulotteisessa, ei-negatiivisten kokonaislukujen taulukossa x. x-taulukon dtype-tyypin on oltava uint8 tai uint16. Jos weights annetaan, kukin x-taulukon alkio kontribuoi vastaavalla painollaan arvon 1 sijaan ja tulos on dtype-tyyppiä float; muutoin tulos on dtype-tyyppiä uint16. Jos minlength annetaan, tulostaulukossa on vähintään kyseinen määrä alkioita (ylimääräiset alkiot ovat nollia).

numpy.trace(m: ndarray) int | float

Palauta neliömatriisin m lävistäjäalkioiden summa. Paluutyyppi seuraa m-taulukon dtype-tyyppiä (kokonaislukutaulukot tuottavat kokonaisluvun, float-taulukot floatin).

Muunna

numpy.compress(condition: ndarray | list | tuple, a: ndarray, *, axis: int | None = None) ndarray

Palauta a-taulukon viipaleet, jotka on valittu axis-akselia pitkin totuusarvoisella condition-ehdolla. Arvolla axis=None käytetään litistettyä taulukkoa.

numpy.delete(a: ndarray, indices: int | ndarray | list | tuple | range, *, axis: int | None = None) ndarray

Palauta a-taulukon kopio, jossa kohdat indekseissä indices on poistettu axis-akselia pitkin. Arvolla axis=None taulukko litistetään ensin. Negatiiviset indeksit lasketaan axis-akselin lopusta; indices lajitellaan sisäisesti ennen poistoa.

numpy.dot(m1: ndarray, m2: ndarray) ndarray | float

Palauta kahden taulukon pistetulo. Kahdelle 1-ulotteiselle taulukolle tämä on sisätulo (float-skalaari). 2-ulotteisille taulukoille tämä on matriisikertolasku; sisäulottuvuuksien on täsmättävä. Tulos on aina dtype-tyyppiä float.

Approksimointi

numpy.interp(x: ndarray, xp: ndarray, fp: ndarray, *, left: float | None = None, right: float | None = None) ndarray

Yksiulotteinen lineaarinen interpolointi. xp:n on oltava monotonisesti kasvava 1-ulotteinen riippumattomien arvojen taulukko; fp sisältää vastaavat riippuvat arvot; x ovat pisteet, joissa interpolantti lasketaan. left ja right korvaavat arvot, jotka palautetaan tapauksissa x < xp[0] ja x > xp[-1] (oletukset: fp[0] ja fp[-1]).

numpy.trapz(y: ndarray, x: ndarray | None = None, dx: float = 1.0) float

Integroi y käyttäen yhdistettyä puolisuunnikassääntöä. Jos x annetaan, se määrittää y:tä vastaavat näytepositiot; muutoin käytetään väliä dx. y:n (ja x:n) on oltava 1-ulotteisia.

Valinta

numpy.take(a: ndarray, indices: ndarray | list | tuple, *, axis: int | None = None, out: ndarray | None = None, mode: str | None = None) ndarray

Ota a-taulukosta alkiot annetuissa indekseissä indices axis-akselia pitkin. Arvolla axis=None käytetään litistettyä taulukkoa. mode valitsee rajat ylittävän käyttäytymisen: "raise" (oletus – nostaa ValueError), "wrap" (modulo akselin pituus) tai "clip" (leikkaa sallitulle alueelle; negatiivisia indeksejä ei sallita). Jos out annetaan, tulos kirjoitetaan siihen.

Bittikohtaiset

numpy.bitwise_and(x1: ndarray, x2: ndarray) ndarray

Kahden kokonaislukutaulukon alkioittainen bittikohtainen JA; lähetys (broadcast) on tuettu. Ei-kokonaislukutyyppinen dtype nostaa poikkeuksen.

numpy.bitwise_or(x1: ndarray, x2: ndarray) ndarray

Kahden kokonaislukutaulukon alkioittainen bittikohtainen TAI.

numpy.bitwise_xor(x1: ndarray, x2: ndarray) ndarray

Kahden kokonaislukutaulukon alkioittainen bittikohtainen XTAI.

numpy.left_shift(x1: ndarray, x2: ndarray) ndarray

Alkioittainen x1-taulukon bittikohtainen siirto vasemmalle x2 bittiä; molemmilla taulukoilla on oltava kokonaislukutyyppinen dtype.

numpy.right_shift(x1: ndarray, x2: ndarray) ndarray

Alkioittainen x1-taulukon bittikohtainen siirto oikealle x2 bittiä; molemmilla taulukoilla on oltava kokonaislukutyyppinen dtype.

Suodatus

numpy.convolve(a: ndarray, v: ndarray) ndarray

Palauta kahden 1-ulotteisen taulukon diskreetti lineaarinen konvoluutio. Vain "full"-tila on tuettu; numpyn mode-avainsanaa ei hyväksytä (muut tilat voidaan saada viipaloimalla täysi tulos). Tuloksen pituus on len(a) + len(v) - 1.

Polynomi

numpy.polyfit(x: ndarray | list | tuple, y: ndarray | list | tuple, deg: int) ndarray
numpy.polyfit(y: ndarray | list | tuple, deg: int) ndarray

Sovita asteen deg polynomi datapisteisiin (x, y) pienimmän neliösumman menetelmällä ja palauta polynomin kertoimet (korkein aste ensin). Jos x jätetään pois, käytetään range(len(y)). Nostaa ValueError-poikkeuksen, jos x:n ja y:n pituudet eroavat.

numpy.polyval(p: ndarray | list | tuple, x: ndarray | list | tuple | int | float) ndarray | float

Laske polynomi, jonka kertoimet ovat p (korkein aste ensin), pisteessä x. Jos x on skalaari, palautetaan float, muutoin ndarray.

I/O

numpy.load(file: str) ndarray

Lue aiemmin funktiolla save kirjoitettu taulukko tiedostosta file (numpyn alustariippumaton .npy-muoto). Endiaanisuus muunnetaan lennossa, jos tiedoston tavujärjestys eroaa isäntäkoneen omasta.

numpy.loadtxt(file: str, *, delimiter: str | None = None, comments: str = '#', max_rows: int = -1, usecols: int | ndarray | list | tuple | None = None, dtype: int = float, skiprows: int = 0) ndarray

Lue numeerista dataa teksti­tiedostosta file ja palauta se ndarray-taulukkona. delimiter on oletuksena tyhjätila; comments on rivikommenttimerkki; max_rows rajoittaa luettavien datarivien määrää (-1 kaikille); usecols valitsee sarakkeet indeksin perusteella; skiprows ohittaa kyseisen määrän alkurivejä. Jos dtype ei ole float, arvot muunnetaan pyöristämällä.

numpy.save(file: str, a: ndarray) None

Tallenna a tiedostoon file numpyn alustariippumattomassa .npy-muodossa.

numpy.savetxt(file: str, a: ndarray, *, delimiter: str = ' ', header: str | None = None, footer: str | None = None, comments: str = '# ') None

Kirjoita a tiedostoon file tekstinä. delimiter erottaa arvot rivin sisällä; header ja footer, jos annettu, kirjoitetaan ennen dataa / sen jälkeen, kumpikin etuliitteenään comments. Arvot kirjoitetaan liukulukuina.

Universaalit funktiot

Alkioittaiset matematiikkafunktiot. Kukin hyväksyy skalaarin tai ndarray-taulukon ja palauttaa muodoltaan vastaavan tuloksen (float-skalaarin skalaarisyötteelle, ndarray-taulukon taulukkosyötteelle). Kutsuttaessa ndarray-taulukolla tulos on uusi liukuluku-ndarray-taulukko; valinnainen out-avainsana voidaan välittää tuloksen kirjoittamiseksi esivarattuun samankokoiseen float-ndarray-taulukkoon.

numpy.acos(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion käänteiskosini (arkuskosini); tulos on radiaaneina.

numpy.acosh(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion käänteishyperbolinen kosini.

numpy.arctan2(y: ndarray | float, x: ndarray | float, /) ndarray | float

Laske kaksiargumenttinen käänteistangentti atan2(y, x) alkioittain; tukee lähetystä (broadcast) kahden syötteen välillä.

numpy.around(x: ndarray, /, decimals: int = 0) ndarray

Pyöristä ndarray-taulukon x alkiot annettuun määrään desimaaleja decimals; ensimmäisen argumentin on oltava ndarray.

numpy.asin(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion käänteissini (arkussini); tulos on radiaaneina.

numpy.asinh(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion käänteishyperbolinen sini.

numpy.atan(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion käänteistangentti (arkustangentti); tulos on radiaaneina.

numpy.atanh(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion käänteishyperbolinen tangentti.

numpy.ceil(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion kattofunktio (pienin kokonaisluku, joka ei ole arvoa pienempi).

numpy.cos(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion kosini (radiaaneina).

numpy.cosh(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion hyperbolinen kosini.

numpy.degrees(x: ndarray | float, /) ndarray | float

Muunna x-taulukon kukin alkio radiaaneista asteiksi.

numpy.exp(x: ndarray | float, /) ndarray | float

Laskee eksponentiaalin e**x jokaiselle x:n alkiolle.

numpy.expm1(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion exp(x) - 1 parannetulla tarkkuudella lähellä nollaa.

numpy.floor(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion lattiafunktio (suurin kokonaisluku, joka ei ole arvoa suurempi).

numpy.log(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion luonnollinen logaritmi.

numpy.log10(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion 10-kantainen logaritmi.

numpy.log2(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion 2-kantainen logaritmi.

numpy.radians(x: ndarray | float, /) ndarray | float

Muunna x-taulukon kukin alkio asteista radiaaneiksi.

numpy.sin(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion sini (radiaaneina).

numpy.sinc(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion normalisoitu sinc-funktio sin(pi*x) / (pi*x).

numpy.sinh(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion hyperbolinen sini.

numpy.sqrt(x: ndarray | float, /, *, dtype: int = float) ndarray | float

Laskee neliöjuuren jokaiselle x:n alkiolle.

numpy.tan(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion tangentti (radiaaneina).

numpy.tanh(x: ndarray | float, /) ndarray | float

Laske x-taulukon kunkin alkion hyperbolinen tangentti.

numpy.vectorize(f: Callable[[float], float], /, *, otypes: int | None = None) Callable

Palauta kutsuttava objekti, joka soveltaa Python-funktiota f alkioittain skalaariin, iteroitavaan tai ndarray-taulukkoon; otypes valitsee tulosteen dtype-tyypin (oletuksena float).

Vakiot

numpy.e: float

Eulerin luku \(e \approx 2.71828\).

numpy.pi: float

\(\pi \approx 3.14159\).

numpy.inf: float

IEEE-754-liukuluvun positiivinen ääretön.

numpy.nan: float

IEEE-754-liukuluvun ”ei luku” (not a number).

numpy.bool: int

Dtype-koodi totuusarvoisille taulukoille (tallennetaan uint8-tyyppinä).

numpy.uint8: int

Dtype-koodi etumerkittömille 8-bittisille kokonaislukutaulukoille.

numpy.int8: int

Dtype-koodi etumerkillisille 8-bittisille kokonaislukutaulukoille.

numpy.uint16: int

Dtype-koodi etumerkittömille 16-bittisille kokonaislukutaulukoille.

numpy.int16: int

Dtype-koodi etumerkillisille 16-bittisille kokonaislukutaulukoille.

numpy.float: int

Dtype-koodi 32-bittisille liukulukutaulukoille.