9.3

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from scipy import stats

读取Excel文件

file_path = '9.3.xlsx'
data = pd.read_excel(file_path, header=0)

定义实验室名称列表

labs = ['Lab1', 'Lab2', 'Lab3', 'Lab4', 'Lab5', 'Lab6', 'Lab7']

确保Excel文件中的列名与实验室名称匹配

assert all(lab in data.columns for lab in labs), "Excel文件中的列名与实验室名称不匹配"

绘制箱线图

plt.figure(figsize=(12, 8))
sns.boxplot(data=data)
plt.xticks(rotation=45)
plt.title('Boxplot of Chlorpheniramine Content Measurements by Laboratory')
plt.xlabel('Laboratory')
plt.ylabel('Chlorpheniramine Content (mg)')
plt.show()

进行单因素方差分析

f_stat, p_value = stats.f_oneway(data['Lab1'], data['Lab2'], data['Lab3'], data['Lab4'], data['Lab5'], data['Lab6'], data['Lab7'])

打印F统计量和P值

print(f"F-statistic: {f_stat}")
print(f"P-value: {p_value}")

设置显著性水平

alpha = 0.05

判断各实验室测量的扑尔敏有效含量的均值是否有显著差异

if p_value < alpha:
print("在显著水平 α=0.05 下,各实验室测量的扑尔敏有效含量的均值有显著差异。")
else:
print("在显著水平 α=0.05 下,各实验室测量的扑尔敏有效含量的均值没有显著差异。")

打印学号后两位

print("学号: 08")
结果如下图所示:

posted @ 2024-12-09 17:09  方~~  阅读(11)  评论(0)    收藏  举报