数据学习(九)-参数估计实践
程序员文章站
2022-03-09 09:12:00
...
#导入包
import pandas as pd
import numpy as np
from scipy import stats
#读取数据
data=pd.read_excel('G:\Datasets\data.xlsx')
data
结果如下:
#取数据中的age列,并求该列的平均值
age=data['Age']
age.mean()
结果如下:
#从总的数据中抽取一百个样本
age_sample=age.sample(100)
x1=age_sample.mean()
age_sample.describe()
结果如下:
#求正态分布下的置信区间
#置信水平为95%
def norm_conf(data,confidence=0.95):
sample_mean=np.mean(data)
sample_std=np.std(data,ddof=1)
sample_size=len(data)
conf_intveral=stats.norm.interval(confidence,loc=sample_mean,scale=sample_std)
print(conf_intveral)
norm_conf(age_sample)
结果如下:
# 在同一数据下求T分布下的置信区间
def t_conf(data,conference=0.95):
sample_mean=np.mean(data)
sample_std=np.std(data,ddof=1)
sample_size=len(data)
conf_intveral=stats.t.interval(conference,df=(sample_size-1),loc=sample_mean,scale=sample_std)
print(conf_intveral)
t_conf(age_sample)
结果如下:
#这里将随即取1000次的100个样本,求每次的平均值
#将平均值存储在数组中
scale_means=[]
for _ in range(1000):
scale_sample=age.sample(100,replace=True)
mean=scale_sample.mean()
print(mean)
scale_means.append(mean)
结果如下:
#求取1000次下的正太分布置信区间估计
norm_conf(scale_means)
结果如下:
#求取1000次下的T分布置信区间估计
t_conf(scale_means)
结果如下:
#导入绘图工具包
import seaborn as sbn
import matplotlib.pyplot as plt
#将数据进行绘图显示
sbn.set_palette("hls") #设置所有图的颜色,使用hls色彩空间
sbn.distplot(scale_means,color="g",bins=15,kde=True)
plt.title('Age')
plt.xlim(25,35)
plt.grid(True)
plt.show()
结果如下:
上一篇: AnimatedPieView的使用
下一篇: SQL SERVER触发器
推荐阅读
-
python网络编程学习笔记(九):数据库客户端 DB-API
-
python网络编程学习笔记(九):数据库客户端 DB-API
-
荐 14天数据分析与机器学习实践之Day02——数据分析处理库Pandas应用总结
-
机器学习笔记——利用PCA简化数据实践(参评)
-
《Python编程:从入门到实践》个人学习笔记/心得(菜鸟瞎扯淡) Chapter2 变量和简单数据类型
-
《机器学习Python实践》CH6 数据理解
-
Python学习日记(四十一) Mysql数据库篇 九
-
大数据学习系列之九---- Hive整合Spark和HBase以及相关测试
-
学习python的第九天(内置算法:列表数据类型,元祖数据类型,字典数据类型)
-
Vue学习之路第九篇:双向数据绑定 v-model指令