logo

numpy standarta novirze

Python numpy modulis nodrošina funkciju, ko sauc numpy.std() , ko izmanto, lai aprēķinātu standarta novirzi pa norādīto asi. Šī funkcija atgriež masīva elementu standarta novirzi. Kvadrātsakne no vidējās novirzes kvadrātā (aprēķināta no vidējās vērtības) ir pazīstama kā standarta novirze. Pēc noklusējuma standarta novirze tiek aprēķināta saplacinātajam masīvam. Ar palīdzību x.sum()/N , parasti tiek aprēķināta vidējā kvadrātiskā novirze, un šeit N = len(x).

Standarta novirze=sqrt(vidējais(abs(x-x.mean( ))**2

Sintakse:

 numpy.std(a, axis=None, dtype=None, out=None, ddof=0, keepdims=) 

Parametri

a: masīva_līdzīgs

Šis parametrs nosaka avota masīvu, kura elementu standarta novirze tiek aprēķināta.

ass: nav, int vai int virkne (neobligāti)

Tā ir ass, pa kuru tiek aprēķināta standarta novirze. Pēc noklusējuma tiek aprēķināta saplacinātā masīva standarta novirze. Ja tas ir intu virkne, veic standarta novirzi pa vairākām asīm, nevis vienu asi vai visas ass, kā iepriekš.

dtype : datu_veids (neobligāti)

Šis parametrs nosaka datu tipu, kas tiek izmantots standarta novirzes aprēķināšanai. Pēc noklusējuma veselu skaitļu masīviem datu tips ir float64, un peldošā tipa masīvam tas būs tāds pats kā masīva tips.

kanēlis vs mate

izeja: ndarray (pēc izvēles)

Šis parametrs nosaka alternatīvo izvades masīvu, kurā jāievieto rezultāts. Šim alternatīvajam ndarray ir tāda pati forma kā paredzamajai izvadei. Bet mēs izmetam veidu, kad nepieciešams.

dof : int (pēc izvēles)

Šis parametrs nosaka Delta brīvības pakāpes. Aprēķinos tiek izmantots N-ddof dalītājs, kur N ir elementu skaits. Pēc noklusējuma šī parametra vērtība ir iestatīta uz 0.

Keepdims: bool (pēc izvēles)

satur python

Tas nav obligāts, kura vērtība, ja tā ir patiesa, atstās samazināto asi kā izmērus ar vienu izmēru rezultātā. Kad tas nodod noklusējuma vērtību, tas ļaus pārsūtīt vērtības, kas nav noklusējuma vērtības, izmantojot ndarray apakšklases vidējo metodi, bet Keepdims netiks izturēts. Arī izvade vai rezultāts tiks pareizi pārraidīts pret ievades masīvu.

Atgriežas

Šī funkcija atgriezīs jaunu masīvu, kas satur standarta novirzi. Ja mēs neiestatām parametru “out” uz Nav, tas atgriež izvades masīva atsauci.

1. piemērs:

 a=np.array([[1,4,7,10],[2,5,8,11]]) b=np.std(a) b 

Izvade:

 3.391164991562634 

Iepriekš minētajā kodā

  • Mēs esam importējuši numpy ar aizstājvārdu np.
  • Mēs esam izveidojuši masīvu 'a', izmantojot funkciju array ().
  • Mēs esam deklarējuši mainīgo 'b' un piešķīruši atgriezto vērtību std() funkciju.
  • Funkcijā esam izturējuši masīvu “a”.
  • Visbeidzot, mēs mēģinājām izdrukāt vērtību 'b' .

Izvadē ir parādīts masīvs, kas satur standarta novirzi.

sapludināšanas kārtošanas algoritms

2. piemērs:

 a=np.array([[1,4,7,10],[2,5,8,11]]) b=np.std(a, axis=0) b 

Izvade:

 array([0.5, 0.5, 0.5, 0.5]) 

3. piemērs:

 a=np.array([[1,4,7,10],[2,5,8,11]]) b=np.std(a, axis=1) b 

Izvade:

 array([3.35410197, 3.35410197]) 

4. piemērs:

 import numpy as np a = np.zeros((2, 512*512), dtype=np.float32) a[1, :] = 1.0 a[0, :] = 0.1 b=np.std(a) b 

Iepriekš minētajā kodā

  • Mēs esam importējuši numpy ar aizstājvārdu np.
  • Mēs esam izveidojuši masīvu 'a', izmantojot funkciju np.zeros() ar datu tipu np.float32.
  • Mēs esam piešķīruši vērtību 0,1 elementiem 1strindu un 1,0 uz otrās rindas elementiem.
  • Funkcijā esam izturējuši masīvu “a”.
  • Visbeidzot, mēs mēģinājām izdrukāt vērtību 'b' .

Izvadā ir parādīta standarta novirze, kas var būt neprecīza.

Izvade:

 0.45000008 

5. piemērs:

 import numpy as np a = np.zeros((2, 512*512), dtype=np.float32) a[1, :] = 1.0 a[0, :] = 0.1 b=np.std(a ,dtype=np.float64)) b 

Izvade:

 0.4499999992549418