SciPy stats.skew Funktion

Lakshay Kapoor 30 Januar 2023
  1. Die scipy.stats.skew-Funktion
  2. Schiefe berechnen mit numpy.linspace()
  3. Berechnung der Schiefe mit Zufallsdaten
SciPy stats.skew Funktion

Schiefe in der Statistik wird als Maß für die Symmetrie der Verteilung einiger Daten definiert. Der Punkt, der sich an der Spitze der gesamten Verteilung befindet, wird als Modus bezeichnet. Die Schiefe wird durch die folgende Formel berechnet.

Skewness = 3(Mean - Median) / Standard Deviation

Bedingungen der Schiefe:

  • Bei skewness = 0 sind die Daten normalverteilt.
  • Wenn skewness > 0, dann werden die Daten auf der linken Seite der Verteilung stärker gewichtet.
  • Wenn skewness < 0, dann werden die Daten auf der rechten Seite der Verteilung stärker gewichtet.

Die scipy.stats.skew-Funktion

Die Funktion scipy.stats.skew der Bibliothek SciPy wird verwendet, um den Wert der Schiefe von gegebenen Daten zu bestimmen. Diese Funktion ist definiert als scipy.stats.skew(a, axis, bias, nan_policy).

Nachfolgend sind die Parameter der Funktion scipy.stats.skew aufgeführt.

a (ndarray) Es definiert das Eingabearray, dh die Eingabedaten.
axis (int) Sie definiert die Achse, entlang der die Funktion den Wert Schiefe berechnet. Der Standardwert ist 0, d.h. die Funktion rechnet über das ganze Array.
bais (bool) Wenn der Wert dieses Parameters auf False gesetzt ist, werden alle Berechnungen um die statistische Verzerrung korrigiert.
nan_policy Es entscheidet, wie mit NaN-Werten in den Eingabedaten umgegangen wird. Im Parameter gibt es drei Entscheidungsparameter, propagate, raise, omit. propagate gibt einfach den NaN-Wert zurück, raise gibt einen Fehler zurück und omit ignoriert einfach die NaN-Werte und die Funktion fährt mit der Berechnung fort. Diese Entscheidungsparameter werden in einfachen Anführungszeichen ' ' definiert. Außerdem ist die Voreinstellung auf propagate gesetzt.

Alle Parameter außer dem Parameter a (ndarray) sind optional. Das bedeutet, dass sie nicht jedes Mal neu definiert werden müssen, wenn die Funktion scipy.stats.skew verwendet wird.

Schiefe berechnen mit numpy.linspace()

Die Funktion linespace() der Bibliothek NumPy hilft beim Erstellen zufälliger Zahlenfolgen mit gleichen Abständen.

from scipy.stats import skew
import numpy as np
import pylab as p

x = np.linspace(-10, 10, 1000)
y = 1 / (np.sqrt(4 * np.pi)) * np.exp(-0.2 * (x) ** 2)

p.plot(x, y, ".")
p.show()

print("Skewness for the input data : ", skew(y))

Ausgabe:

scipy stats normaltest

Skewness for the input data :  1.458658437437705

Berechnung der Schiefe mit Zufallsdaten

Bei dieser Methode wird die Funktion np.random.normal der Bibliothek NumPy verwendet. Diese Funktion hilft beim Erstellen eines Arrays mit einer bestimmten Form und Größe, das aus zufälligen Werten besteht, die tatsächlich Teil der Gaußschen Verteilung sind.

from scipy.stats import skew
import numpy as np

s = np.random.normal(0, 5, 10000)

print("S : ", s)

print("Skewness for input data : ", skew(s))
S :  [ 2.52232305  5.66398738  2.72036031 ...  0.53774684 -0.31164153
  1.99714612]
Skewness for input data :  0.0027004583356120505
Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

Verwandter Artikel - SciPy Stats