Метод skew
Метод skew применяется к DataFrame
и возвращает коэффициент асимметрии для каждого
числового столбца. Коэффициент асимметрии
показывает смещение распределения данных
в сторону положительных или отрицательных
значений. Метод имеет параметры: axis
для выбора оси, skipna для пропуска
пропущенных значений, numeric_only
для работы только с числовыми столбцами.
Синтаксис
df.skew(axis=0, skipna=True, numeric_only=True)
Пример
Давайте вычислим коэффициент асимметрии для всех числовых столбцов таблицы:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3, 4, 5],
'b': [10, 20, 30, 40, 50]
})
res = df.skew()
print(res)
Результат выполнения кода:
a 0.0
b 0.0
dtype: float64
Для симметричных распределений коэффициент равен нулю.
Пример
Рассмотрим пример с асимметричным распределением данных:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3, 4, 100],
'b': [10, 20, 30, 40, 50]
})
res = df.skew()
print(res)
Результат выполнения кода:
a 2.008554
b 0.000000
dtype: float64
Положительный коэффициент асимметрии для столбца 'a' указывает на смещение распределения вправо из-за выброса 100.
Пример
Метод автоматически пропускает пропущенные значения. Давайте проверим:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, None, 4, 5],
'b': [10, 20, 30, 40, 50]
})
res = df.skew()
print(res)
Результат выполнения кода:
a 0.0
b 0.0
dtype: float64
Пропущенное значение в столбце 'a' не повлияло на расчёт.