python统计分析——操作案例(模拟抽样)

参考资料:用python动手学统计学

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

data_set=pd.read_csv(r"C:\python统计学\3-4-1-fish_length_100000.csv")['length']    #此处将文件路径改为自己的路径即可

1、抽样

        为了保证数据分析的可复现性,使用了随机种子。

        np.random.choice()的用法参考:https://blog.csdn.net/maizeman126/article/details/135572042

python统计分析——操作案例(模拟抽样)_第1张图片

2、计算样本均值

 3、计算总体统计量

         相关函数用法参照:python统计分析——单变量描述统计-CSDN博客

mean_t=np.mean(data_set)
std_t=np.std(data_set,ddof=0)
var_t=np.var(data_set,ddof=0)
max_t=np.max(data_set)
min_t=np.min(data_set)

print('总体均值:',mean_t)
print('总体标准差:',std_t)
print('总体方差:',var_t)
print('最大值:',max_t)
print('最小值:',min_t)

python统计分析——操作案例(模拟抽样)_第2张图片

4、绘制总体的直方图:

        直方图的绘制参照:

python统计分析——直方图(plt.hist)_python统计直方图-CSDN博客

python统计分析——直方图(sns.histplot)-CSDN博客

python统计分析——直方图(df.hist)_python df.hist()-CSDN博客

sns.set()
sns.histplot(data_set,kde=False,color='black')

python统计分析——操作案例(模拟抽样)_第3张图片

        根据总体统计量计算和直方图直观查看,目前可以暂时认为:总体的概率分布服从均值为4,方差为0.64的正态分布,数值的分布范围基本在1-7之间。

5、绘制均值为4,方差为0.64,数据范围为1-7的正态分布的概率密度曲线

5.1 准备1-7上以0.1为公差的等差数列。(注意np.arange函数应用中仍然遵循包左不包右的原则)

x=np.arange(start=1,stop=7.1,step=0.1)

python统计分析——操作案例(模拟抽样)_第4张图片

5.2 用stats.norm.pdf计算概率密度。

        stats.norm.pdf()函数中,x为分位数,loc表示均值,scale表示标准差(注意不是方差),结果表示取值x时对应的概率密度。

from scipy import stats
pro_d=stats.norm.pdf(x=x,loc=4,scale=0.8)
pro_d

python统计分析——操作案例(模拟抽样)_第5张图片

5.3 绘制概率密度曲线

plt.plot(x,pro_d,color='k')   #k表示颜色black的简写

python统计分析——操作案例(模拟抽样)_第6张图片

5.4 将总体直方图和正态分布概率密度函数放到一个中显示:

sns.histplot(data_set,stat='density',kde=False)
plt.plot(x,pro_d,color='k')

python统计分析——操作案例(模拟抽样)_第7张图片

      根据上图可以看出:正态分布的概率密度和总体分布的概率密度几乎吻合,因此可以认为总体服从正态分布。

你可能感兴趣的:(python,数据分析,统计分析)