L'analisi statistica dei dati ci aiuta a dare un senso all'informazione nel suo complesso. Questo ha applicazioni in molti campi come la biostatistica e l'analisi aziendale.
Invece di passare attraverso singoli punti di dati, solo uno sguardo al loro valore medio o alla varianza collettiva può rivelare tendenze e caratteristiche che potremmo aver perso osservando tutti i dati in formato raw. Rende anche più semplice e più significativo il confronto tra due grandi serie di dati.
Tenendo presente queste esigenze, Python ci ha fornito il modulo delle statistiche.
In questo tutorial, imparerai a conoscere diversi modi di calcolare le medie e misurare la diffusione di un dato insieme di dati. Salvo diversa indicazione, tutte le funzioni in questo modulo supportano int
, galleggiante
, decimale
e frazione
set di dati basati come input.
Puoi usare il medi (dati)
funzione per calcolare la media di alcuni dati dati. Viene calcolato dividendo la somma di tutti i punti dati per il numero di punti dati. Se i dati sono vuoti, verrà sollevato un'eccezione StatisticsError. Ecco alcuni esempi:
importare statistiche da frazioni importare Frazione come F dall'importazione decimale Decimale come D statistics.mean ([11, 2, 13, 14, 44]) # restituisce 16.8 statistics.mean ([F (8, 10), F (11, 20 ), F (2, 5), F (28, 5)]) # restituisce Fraction (147, 80) statistics.mean ([D ("1.5"), D ("5.75"), D ("10.625") , D ("2.375")]) # restituisce decimale ('5.0625')
Hai imparato a conoscere molte funzioni per generare numeri casuali nel nostro ultimo tutorial. Usiamoli ora per generare i nostri dati e vedere se la media finale è uguale a quello che ci aspettiamo che sia.
import export random statistics data_points = [random.randint (1, 100) per x nell'intervallo (1,1001)] statistics.mean (data_points) # restituisce 50.618 data_points = [random.triangular (1, 100, 80) per x in range (1,1001)] statistics.mean (data_points) # restituisce 59.93292281437689
Con il randInt ()
funzione, la media dovrebbe essere vicina al punto centrale di entrambi gli estremi e, con la distribuzione triangolare, dovrebbe essere vicina a basso + alto + modo / 3
. Pertanto, la media nel primo e secondo caso dovrebbe essere rispettivamente 50 e 60.33, che è vicino a ciò che abbiamo effettivamente ottenuto.
La media è un buon indicatore della media, ma alcuni valori estremi possono tradursi in una media che è lontana dall'effettiva posizione centrale. In alcuni casi è più desiderabile determinare il punto dati più frequente in un set di dati. Il modalità()
la funzione restituirà il punto dati più comune da dati numerici discreti e non numerici. Questa è l'unica funzione statistica che può essere utilizzata con dati non numerici.
import export random statistics data_points = [random.randint (1, 100) per x nell'intervallo (1,1001)] statistics.mode (data_points) # restituisce 94 data_points = [random.randint (1, 100) per x nell'intervallo ( 1.1001)] statistics.mode (data_points) # restituisce 49 data_points = [random.randint (1, 100) per x nell'intervallo (1,1001)] statistics.mode (data_points) # restituisce la modalità 32 (["cat" , "cane", "cane", "gatto", "scimmia", "scimmia", "cane"]) # restituisce "cane"
La modalità di numeri interi generati casualmente in un determinato intervallo può essere uno qualsiasi di questi numeri poiché la frequenza di occorrenza di ciascun numero è imprevedibile. I tre esempi nello snippet di codice sopra riportato lo dimostrano. L'ultimo esempio ci mostra come possiamo calcolare la modalità dei dati non numerici.
Affidarsi alla modalità per calcolare un valore centrale può essere un po 'fuorviante. Come abbiamo appena visto nella sezione precedente, sarà sempre il punto dati più popolare, indipendentemente da tutti gli altri valori nel set di dati. Un altro modo per determinare una posizione centrale è usando il mediano()
funzione. Restituirà il valore mediano dei dati numerici dati calcolando la media di due punti centrali, se necessario. Se il numero di punti dati è dispari, restituisce il punto centrale. Se il numero di punti dati è pari, restituisce la media di due valori mediani.
Il problema con il mediano()
la funzione è che il valore finale potrebbe non essere un punto dati reale quando il numero di punti dati è pari. In questi casi, puoi utilizzare median_low ()
o median_high ()
calcolare la mediana. Con un numero pari di punti dati, queste funzioni restituiscono rispettivamente il valore sempre più piccolo dei due punti centrali.
import export random statistics data_points = [random.randint (1, 100) per x nell'intervallo (1,50)] statistics.median (data_points) # restituisce 53 data_points = [random.randint (1, 100) per x nell'intervallo ( 1,51)] statistics.median (data_points) # restituisce 51.0 data_points = [random.randint (1, 100) per x nell'intervallo (1,51)] statistics.median (data_points) # restituisce 49.0 data_points = [random.randint (1, 100) per x nell'intervallo (1,51)] statistics.median_low (data_points) # restituisce 50 statistics.median_high (data_points) # restituisce 52 statistics.median (data_points) # restituisce 51.0
Nell'ultimo caso, la mediana bassa e alta erano 50 e 52. Ciò significa che nel nostro set di dati non c'era alcun punto dati con il valore 51, ma mediano()
funzione ancora calcolato la mediana di essere 51.0.
Determinare quanto i punti di dati si discostano dal valore medio o tipico del set di dati è altrettanto importante quanto calcolare il valore centrale o medio stesso. Il statistica modulo ha quattro diverse funzioni per aiutarci a calcolare questa diffusione di dati.
Puoi usare il pvariance (data, mu = None)
funzione per calcolare la varianza della popolazione di un dato set di dati.
Il secondo argomento in questo caso è facoltativo. Il valore di mu, quando fornito, dovrebbe essere uguale alla media dei dati forniti. La media viene calcolata automaticamente se il valore è mancante. Questa funzione è utile quando si desidera calcolare la varianza di un'intera popolazione. Se i tuoi dati sono solo un campione della popolazione, puoi utilizzare il varianza (dati, xBar = nessuno)
funzione per calcolare la varianza campionaria. Qui, XBar è la media del campione dato e viene calcolata automaticamente se non fornita.
Per calcolare la definizione standard della popolazione e la deviazione standard del campione, è possibile utilizzare pstdev (data, mu = None)
e stdev (data, xBar = None)
funzioni rispettivamente.
importare statistiche da frazioni importare Frazione come dati F = [1, 2, 3, 4, 5, 6, 7, 8, 9] statistics.pvariance (dati) # restituisce 6.666666666666667 statistics.pstdev (dati) # restituisce 2.581988897471611 statistics.variance (dati) # restituisce 7.5 statistiche.stdev (dati) # restituisce 2.7386127875258306 more_data = [3, 4, 5, 5, 5, 5, 6, 6] statistics.pvariance (more_data) # restituisce 0.7654320987654322 statistics.pstdev (more_data ) # restituisce 0.8748897637790901 some_fractions = [F (5, 6), F (2, 3), F (11, 12)] statistics.variance (alcune_frazioni) # restituisce Frazione (7, 432)
Come evidente dall'esempio precedente, varianza minore implica che più punti di dati sono più vicini al valore medio. Puoi anche calcolare la deviazione standard dei decimali e delle frazioni.
In questo ultimo tutorial della serie, abbiamo imparato a conoscere le diverse funzioni disponibili in statistica modulo. Potresti aver osservato che i dati dati alle funzioni sono stati ordinati nella maggior parte dei casi, ma non è necessario. Ho usato elenchi ordinati in questo tutorial perché rendono più facile capire come il valore restituito da diverse funzioni sia correlato ai dati di input.