Skewness(歪度)によって分布がどのように変わるかヒストグラムで見てみました。
その時のメモです。
- 負の値: 左に偏り
- 0: 左右に均衡
- 正の値: 右に偏り
出力したPythonプログラムです。
AIにほとんど書いてもらっていて、内容あまり確認していないです。
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import skewnorm
# Function to generate random numbers with specified skewness
def generate_skewed_data(size, skewness):
return skewnorm.rvs(a=skewness, size=size)
# Parameters
size = 1000 # Number of random numbers
skewness_values = np.arange(-4, 5, 1) # Skewness values from -4 to 4 with step of 1
# Create subplots
fig, axes = plt.subplots(3, 3, figsize=(15, 15))
axes = axes.flatten()
# Generate and plot histograms for each skewness value
for i, skewness in enumerate(skewness_values):
data = generate_skewed_data(size, skewness)
axes[i].hist(data, bins=30, edgecolor='k')
axes[i].set_title(f'Skewness={skewness}')
axes[i].set_xlabel('Value')
axes[i].set_ylabel('Frequency')
# Adjust layout
plt.tight_layout()
plt.show()