这一组适用于 python 的代码完成以下任务:1.生成两组不同分布的随机数据并获取一组真实数据。 2.分别求其中位数,四分位数,算术平均,四分位差,极差,平均差,方差,标准差,标准分数,变异系数 3.选择合适的标准去分析数据的分布的集中趋势,分布的离散程度,分布的形状
时间: 2024-10-08 11:17:25 浏览: 86
在Python中,可以使用`numpy`和`scipy`库来完成上述任务。首先确保已安装这两个库,如果没有,可以使用`pip install numpy scipy`进行安装。
以下是代码示例:
```python
import numpy as np
from scipy import stats
# 1. 生成随机数据
np.random.seed(42) # 设置随机种子保证结果可复现
data_distribution1 = np.random.normal(loc=0, scale=1, size=100)
data_distribution2 = np.random.exponential(scale=2, size=100) # 正态分布和指数分布作为例子
true_data = np.array([4, 5, 6, ..., 98, 99, 100]) # 真实数据假设为一列整数
# 2. 计算统计量
median1 = np.median(data_distribution1)
q1_2nd_qtr1 = np.percentile(data_distribution1, [25, 75])
iqr1 = q1_2nd_qtr1[1] - q1_2nd_qtr1[0]
mean1 = np.mean(data_distribution1)
std_dev1 = np.std(data_distribution1)
variance1 = np.var(data_distribution1)
skewness1, kurtosis1 = stats.skewness(data_distribution1), stats.kurtosis(data_distribution1)
median2, _, iqr2, _, _, _, _, _, _, _ = stats.describe(data_distribution2)
mean_true, std_dev_true, variance_true, skewness_true, kurtosis_true = True_data.mean(), True_data.std(), True_data.var(), stats.skew(True_data), stats.kurtosis(True_data)
# 3. 分析数据分布
- 中心趋势:均值、中位数和四分位数可用于了解集中趋势。
- 离散程度:IQR(四分位距)、极差和标准差衡量数据点围绕平均值或中位数的分散程度。
- 形状:计算偏度(skewness)和峰度(kurtosis),正态分布近似为0,偏斜则偏度大于0或小于0;峰度衡量数据分布的尖锐程度,高斯分布为3。
阅读全文