一、方差分析实现
方差分析用于判断分类变量和数值型变量是否具有相关性。
这里使用的泰坦尼克号的数据集。
python 方差分析实现:
import scipy.stats as stats
# 按照分类变量进行分组
df_grouped = df.groupby('Embarked')
# 创建空列表
groups = []
# 在每个分类变量中添加与之相关的连续变量
for a, group in df_grouped:
groups.append(group['Age'])
# 执行方差分析,获取检验结果和p值
statistic, pvalue = stats.f_oneway(*groups)
statistic, pvalue
(0.7158557600692332, 0.49015979667479737)
二、卡方检验实现
卡方检验用于检验两个分类变量之间的差异性或相关性。
python 实现卡方检验:
from scipy.stats import chi2_contingency
# 建立两个类别的交叉表
df_crosstab = pd.crosstab(df['Sex'], df['Survived'])
# 获取卡方检验结果
statistic = chi2_contingency(df_crosstab)[0]
pvalue = chi2_contingency(df_crosstab)[1]
statistic, pvalue
(49.62965365707783, 1.8568580662867508e-12)