You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Pandas+Scipy mannwhitneyu自动分析各Type下Blue与Green的Spots差异

问题描述

现有包含Type、Color、Spots字段的大型数据表(示例数据如下):

Type    Color   Spots
A   Blue    792
A   Blue    56
A   Blue    2726
A   Blue    780
A   Blue    591
A   Blue    2867
A   Blue    193
A   Green   134
A   Green   631
A   Green   1010
A   Green   53
A   Green   5826
A   Green   6409
A   Green   3278
B   Blue    670
B   Blue    42
B   Blue    1165
B   Blue    3203
B   Blue    2164
B   Blue    5876
B   Blue    525
B   Green   26
B   Green   143
B   Green   399
B   Green   68
B   Green   939
B   Green   1528
B   Green   401
B   Green   1842
C   Blue    265
C   Blue    19
C   Blue    1381
C   Blue    4483
C   Blue    1103
C   Blue    1906
C   Blue    691
C   Green   38
C   Green   149
C   Green   87
C   Green   33
C   Green   1427
C   Green   1009
C   Green   342
C   Green   190

需要针对每个Type,对Blue和Green对应的Spots数据执行Scipy的mannwhitneyu(曼-惠特尼U检验)分析,例如Type A的对比数据如下:

Blue Green
792 134
56  631
2726 1010
780 53
591 5826
2867 6409
193 3278

目标是通过Pandas分组后自动调用Scipy完成分析,获取每个Type对应的p值。

实现思路与代码

步骤1:导入依赖库

import pandas as pd
from scipy.stats import mannwhitneyu

步骤2:加载数据

假设数据存储为制表符分隔的文本文件,读取到DataFrame;若为其他格式(如CSV、Excel),替换对应读取方法即可:

df = pd.read_csv('your_data.txt', sep='\t')

步骤3:分组批量执行检验

定义自定义函数处理单组数据,再通过groupby+apply实现全量自动化分析:

def compute_mannwhitneyu(group):
    # 拆分当前Type下Blue和Green的Spots数据
    blue_data = group[group['Color'] == 'Blue']['Spots']
    green_data = group[group['Color'] == 'Green']['Spots']
    
    # 执行曼-惠特尼U检验,alternative参数按需选择双侧/单侧检验
    _, p_val = mannwhitneyu(blue_data, green_data, alternative='two-sided')
    
    # 返回p值,可按需扩展返回统计量等信息
    return pd.Series({'p_value': p_val})

# 按Type分组并应用检验逻辑
result_df = df.groupby('Type').apply(compute_mannwhitneyu).reset_index()

步骤4:查看结果

输出结果即可得到每个Type对应的检验p值:

print(result_df)

注意事项

  • 确保每组Type下同时存在Blue和Green的有效数据,可在自定义函数中添加判断逻辑处理缺失数据的异常情况。
  • mannwhitneyu的alternative参数可根据研究需求设置为'two-sided'(默认双侧)、'less'或'greater'。

内容的提问来源于stack exchange,提问作者Eusebio Perdiguero

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 08:45:39