编写一个Python程序,循环输入7天温度,求平均温度。

编写一个Python程序,循环输入7天温度,求平均温度。,第1张

python3代码如下则岁:

把下面代码里的井号改成扰梁空格孙李睁

l = []

for i in range(1, 8):

##l.append(float(input('第%d天:' % i)))

print('平均温度:', sum(l) / len(l))

数据选自 Journal of the American Medical Association ( http://jse.amstat.org/v4n2/datasets.shoemaker.html

)关于体温性别心率的临床数据,并对以下问题进行数据分析:

人类体温均值真的是98.6F吗?( Journal of the American Medical Association entitled "A Critical Appraisal of 98.6 Degrees F, the Upper Limit of the Normal Body Temperature )

体温样本数据是否服从正态分布?

不正常的体温是多少?

男性和女性的正常体温有明显的区别吗?

体温和心率是否有相关性?

为了找到以上问题的答案,我们使用python来对样本数据做一下分析。

1. 人类体温均值真的是98.6F吗?

体温散点图

注:样本共130条数据,其中male数据65条,female数据65条。

importpandasaspddf = pd.read_csv('http://jse.amstat.org/datasets/normtemp.dat.txt', header =None,sep ='\s+',names=['体温','性别','心率'])#读取数据df['体温'].describe()'''

count    130.000000

mean      98.249231

std        0.733183

min      96.300000

25%      97.800000

50%      98.300000

75%      98.700000

max      100.800000

'''

结论:可以看到 体温的均值为 98.25 F.

2. 体温样本数据是否服从正态分布?

检测体温是否服从正态分布:以下分别使用 kstest、shapiro、normaltest三种方法来检验。

u = df['体温'].mean()# 计算均值std = df['体温'].std()# 计算标准差ks_test = kstest(df['体温'],'norm',(u,std))#KstestResult(statistic=0.06472685044046644, pvalue=0.645030731743997)shapiro_test = scipy.stats.shapiro(df['体温'])#(0.9865770936012268, 0.233174666762352)normaltest_test = normaltest(df['体温'], axis=None)#NormaltestResult(statistic=2.703801433319236, pvalue=0.2587479863488212)

结论:三种检验的pvalue值均大于5%,因此体察橡温值服从正态分布。

体温分布直方图

我们通过绘制体温的空没核密度分布直方图也可以看出来服从正态分布。

3. 不正常的体温是多少?

利用箱线图剔除异常值

体温分布箱线图

# 计算上下四分位数Q1 = df['体温'].quantile(q =0.25)#97.8Q3 = df['体温'].quantile(q =0.75)#98.7#异常值判断标准, 1.5倍的四分位差 计算上下须对应的值low_quantile = Q1 -1.5*(Q3-Q1)#96.44999999999999high_quantile = Q3 +1.5*(Q3-Q1)#100.05000000000001# 输出异常值value = df['体温'][(df['斗掘体温'] >high_quantile) | (df['体温'] <low_quantile)]'''

超过上下须的异常体温值:

0      96.3

65      96.4

129    100.8

'''

结论:体温值大于100.05F,小于96.45F的均为异常体温。

4. 男性和女性的正常体温有明显的区别吗?

剔除异常体温后,分析样本中男女体温是否有明显区别

df2 = df.loc[(df['体温'] != 96.3)&(df['体温'] != 96.4)&(df['体温'] != 100.8)]#排除异常值df3 = df2.loc[df2['性别']==1]man_narmal_mean_temperature = df3['体温'].mean()#男士体温均值 98.13281250000003df4 = df2.loc[df2['性别']==2]woman_narmal_mean_temperature = df4['体温'].mean()#女士体温均值 98.38730158730158

结论:女性体温均值比男性体温均值偏高.

5. 体温和心率是否有相关性?

df2.corr()'''

          体温        性别        心率

体温  1.000000  0.192293  0.243285

性别  0.192293  1.000000  0.054193

心率  0.243285  0.054193  1.000000

'''df2.corr('kendall')'''

          体温        性别        心率

体温  1.000000  0.159488  0.176732

性别  0.159488  1.000000  0.064551

心率  0.176732  0.064551  1.000000

'''df2.corr('spearman')'''

        体温        性别        心率

体温  1.000000  0.190609  0.265460

性别  0.190609  1.000000  0.077409

心率  0.265460  0.077409  1.000000

5. 结论:由上面三种相关系数可以看出 心率和体温具有正相关。

str = 'skdaskerkjsalkj'# 初始化一个空字典count = {}# 遍指嫌陪历字符串中的每个字符for char in str:# 如果该字符在字典中已经存在,则将唯蠢计数器加1

if char in count:

count[char] += 1

# 否则者宴在字典中添加该字符,并将计数器初始化为1

else:

count[char] = 1# 输出每个字母出现的次数for key, value in count.items():print(key, value)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12244877.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存