如何修改Dunn事后检验结果表的表头名称及转换索引为整数?
解决Dunn事后检验结果表自定义行列名及索引转换问题
自定义行列名称
scikit_posthocs.posthoc_dunn()返回的结果是Pandas DataFrame,直接修改它的columns和index属性就能替换成自定义名称,不管数据是宽格式还是长格式:
- 先把检验结果存入变量:
import scikit_posthocs as sp dunn_result = sp.posthoc_dunn(data, p_adjust='holm-sidak')
- 定义自定义名称列表,直接赋值给行列:
# 示例:替换为业务场景的分组名称 custom_labels = ["对照组", "低剂量组", "中剂量组", "高剂量组"] dunn_result.columns = custom_labels dunn_result.index = custom_labels
如果数据是长格式(需要指定group_col参数),结果的行列默认是分组的唯一值,同样用上述方法替换即可。
将索引转换为整数类型
如果结果的索引是字符串类型的数字(如'1'、'2')或其他非整数类型,直接用astype(int)转换:
# 转换行索引为整数 dunn_result.index = dunn_result.index.astype(int) # 若列也需要转为整数,执行同样操作 dunn_result.columns = dunn_result.columns.astype(int)
如果原索引包含非数字内容,需要先清洗无效值再转换;若为检验结果默认的数字索引,直接转换即可。
内容的提问来源于stack exchange,提问作者jay
相关产品推荐
相关产品推荐

