数据分析学习笔记2

常用的假设检验

1、正太分布检验
1、1正太密度直方图
1、2PP图跟QQ图
1、3K-S检验与Shapiro检验
# 正太密度直方图:
import seaborn as sns
import scipy.stats as stats
sns.distplot(a=data.price,
            fit=stats.norm,
            norm_hist=True,
            hist_kws={'color':'steelblue','edgecolor':'black'},
            kde_kws={'linestyle':'--','label':'核密度曲线'},
            fit_kws={'linestyle':':','label':'正太密度曲线'}
            )
plt.legend()

# PP图跟QQ图的绘制:
import statsmodels.api as sm
pp_qq_plot = sm.ProbPlot(data.price)
pp_plot = pp_qq_plot.ppplot(line='45')  # 绘制PP图
qq_plot=pp_qq_plot.qqplot(line="q")  # 绘制QQ图

# 数据超过5000用K-S检验
stats.kstest(rvs=data.price,
             cdf='norm',  # 指定分布函数为正太分布函数
            args=(data.price.mean(),data.price.std())  # 利用实际数据的均值与标准差来设定理论的正态分布
            )  # 结果返回统计量和P值


# 数据小于5000时用Shapiro检验
import numpy as np
x1=np.random.normal(5,2,3500)
x2=np.random.uniform(1,100,400)
x1_test=stats.shapiro(x=x1)
x2_test=stats.shapiro(x=x2)
print(x1_test)
print(x2_test)
2、卡方检验
from scipy.stats import chi2_contingency
crosstable = pd.crosstab(data.day,data.time)  # 构造两离散变量之间的频次统计表(列联表)
crosstable
chi2_contingency(crosstable)
3、t检验
# 单样本t检验
data=[512,498,490,512,509,493,510,489,508,493,501,496,508,490]
stats.ttest_1samp(a=data,
                 popmean=500  # 指定总体均值
                 )

# 独立样本t检验
stats.levene(data_man,data_women)  # 先进行方差检验,查看方差是否相等
stats.ttest_ind(a=data_man,b=data_women,equal_var=True)

# 配对样本t检验
data1=[512,498,490,512,509,493,510,489,508,493,501,496,508,490]
data2=[532,489,510,478,508,445,590,512,490,500,489,502,490,500]
stats.ttest_rel(a=data1,b=data2)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灯下夜无眠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值