Куртоз: мезокуртическое (нормальное) распределение, асимметрия: распределение с правой или левой асимметрией. Возможно ли это для набора данных/переменной?

Вопрос или проблема

Пример 1:
Куртоз: лептокуртическое распределение
Скошенность: распределение с правым скошением

Пример 2:
Куртоз: лептокуртическое распределение
Скошенность: распределение с левым скошением

Пример 3:
Куртоз: платикуртическое распределение
Скошенность: распределение с правым скошением

Пример 4:
Куртоз: платикуртическое распределение
Скошенность: распределение с левым скошением

Пример 5:
Куртоз: мезокуртическое (нормальное) распределение
Скошенность: распределение с правым скошением

Пример 6:
Куртоз: мезокуртическое (нормальное) распределение
Скошенность: распределение с левым скошением

Пример 7:
Куртоз: лептокуртическое распределение
Скошенность: распределение с нулевым скошением

Пример 8:
Куртоз: платикуртическое распределение
Скошенность: распределение с нулевым скошением

Пример 9:
Куртоз: мезокуртическое (нормальное) распределение
Скошенность: распределение с нулевым скошением

Какие из приведенных выше примеров могут быть наблюдаемы одновременно в наборе данных?

Чтобы изучить характеристики распределения набора данных, мы смотрим на меры скошенности и куртоза. Скошенность — это мера симметрии набора данных, в то время как куртоз предоставляет информацию о распределении вокруг среднего и указывает на наличие выбросов. Эти две меры рассматриваются отдельно, и их коэффициенты вычисляются. Я показал все возможные варианты в 9 примерах выше. Какие из них могут быть наблюдаемы одновременно в наборе данных? Инструменты ИИ (такие как Gemini, GPT) могут объяснить, что все они возможны с примерами сценариев. Однако я считаю, что примеры 3, 4, 5 и 6 не могут наблюдаться одновременно в наборе данных. По этой причине я попросил инструменты ИИ создать пример датафреймов в Python, но они не справились. Коэффициенты куртоза и скошенности не были согласованны. Я был бы очень рад, если бы вы поделились своими мыслями по этому поводу и вдохновили меня.

import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

df = pd.DataFrame({'Gender': np.random.choice(['Женщина', 'Мужчина'], size=1000)})

# Мы используем логнормальное распределение для получения распределения с правым скошением и мезокуртическим распределением.
df['Grade'] = np.random.lognormal(mean=1, sigma=0.5, size=1000)

print(df.head())

print(df['Grade'].describe())

print('Куртоз:', df['Grade'].kurtosis()) # он должен быть близок к 0 (избыточный куртоз - по умолчанию (fisher=True)
print('Скошенность:', df['Grade'].skew()) # он должен быть больше 0

sns.kdeplot(data=df, x='Grade', shade=True)
plt.title('KDE распределение оценок')
plt.show()

Ответ или решение

Анализ возможных распределений в наборах данных: куртозис и асимметрия

Вопрос о том, могут ли куртозис и асимметрия одновременно проявляться в наборе данных, является ключевым в статистическом анализе. Для начала разберем, что такое куртозис и асимметрия, а затем рассмотрим примеры, приведенные в вашем запросе.

Определение куртозиса и асимметрии

  • Куртозис – мера остроты или "пика" распределения данных на графике.

    • Мезокуртическое распределение (куртозис равен 0): стандартное нормальное распределение.
    • Лептокуртическое распределение (куртозис больше 0): имеет более острый пик, чем нормальное распределение, что говорит о большем количестве выбросов.
    • Платикуртическое распределение (куртозис меньше 0): более плоское распределение, указывающее на более равномерное распределение значений.
  • Асимметрия – мера симметрии распределения данных.

    • Положительная асимметрия (правое смещение): хвост распределения тянется вправо.
    • Отрицательная асимметрия (левое смещение): хвост распределения тянется влево.
    • Нулевая асимметрия (симметричное распределение): распределение по обеим сторонам от среднего одинаково.

Возможные сочетания куртозиса и асимметрии

Ориентируясь на ваши примеры, давайте рассмотрим, какие из них могут наблюдаться одновременно:

  1. Примеры 5 и 6:
    • Мезокуртическое распределение с положительной и отрицательной асимметрией.
    • Пример 5 может произойти, если у вас есть данные, которые в целом сбалансированы, но с небольшими правосторонними выбросами.
    • Пример 6 возможен, если распределение также в целом сбалансировано, но при этом имеет небольшие левосторонние выбросы.

Эти два примера являются теоретически возможными, однако для достижения такого сочетания результатов в реальных данных потребуется тщательно подобранный набор данных, который будет немного перекошен и содержать выбросы с разных сторон.

  1. Примеры 3 и 4:

    • Лептокуртическое распределение с любой из асимметрий.
    • Чаще всего такие наборы данных показывают выраженные выбросы, и результативная асимметрия будет соответственно зависеть от характера выбросов.
  2. Примеры 7, 8 и 9:

    • Эти примеры описывают распределения с нулевой асимметрией и различным куртозисом.
    • Нулевой асимметрией могут обладать как лептокуртические, так и платикуртические распределения, что делает их также возможными в одной выборке.

Реализация в Python

Ваш код иллюстрирует, как можно использовать логнормальное распределение для получения данных с правосторонним смещением и мезокуртическим куртозисом. Это действительно интересный подход, но важно помнить, что логнормальное распределение в своем чистом виде не может быть мезокуртическим, так как оно всегда будет иметь положительное смещение. Попробуйте проверить сгенерированные данные на нормальном распределении с небольшими выбросами, что позволит получить желаемый результат.

import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
from scipy import stats

# Генерация нормально распределенных данных
df = pd.DataFrame({'Grade': np.random.normal(loc=100, scale=15, size=1000)})

# Вводим небольшие правосторонние выбросы
df.loc[::50, 'Grade'] += np.random.normal(50, 5, size=(20,))

# Вычисляем куртозис и асимметрию
print('Куртозис:', stats.kurtosis(df['Grade']))
print('Асимметрия:', stats.skew(df['Grade']))

sns.kdeplot(data=df, x='Grade', shade=True)
plt.title('Распределение оценок')
plt.show()

Этот пример создаст набор данных с нормальным распределением с небольшими правосторонними выбросами, что позволит вам получить значения куртозиса и асимметрии более близкие к задумке.

Заключение

Таким образом, сочетания куртозиса и асимметрии в различных формах действительно возможны, однако их реализация в реальных данных часто сталкивается с проблемами. Ваши соображения относительно невозможности сочетаний примеров 3, 4, 5 и 6 требуют глубже изучить характер выбросов и распределений. Правильный выбор процедуры генерации данных и их анализ – залог успешного выявления этих характеристик в наборах данных.

Оцените материал
Добавить комментарий

Капча загружается...