Pandas / Python 3 中的统计逐列比较

2024-06-15 02:01:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个巨大的数据帧DF,像这样,有大约200行和200列:

UIN GROUP v1  v2   v3   cat1   cat2   cat3 ...
1   A     2.0 3.0  5.0  1      0      0    
2   B     1.0 4.0  6.0  0      1      1
3   A     3.0 5.0  7.0  1      0      0

我想对每一列进行统计比较和线性/逻辑回归。在R中,我可以简单地做到:

lapply(DF[c(2:5)], function(x) wilcox.test(x ~ GROUP, data = DF, exact = FALSE))
# or multiple groups:
lapply(DF[c(2:5)], function(x) kruskal.test(x ~ GROUP, data = DF))

以及

lapply(DF[c(2,6,7,8)], function(x) fisher.test(x ~ DF$GROUP))

以及

lapply(DF[c(2:8), function(x) glm(GROUP ~ x, data = DF, family = "binomial")

它非常快速和方便,我们可以在一个列表中看到完整的结果。你知道吗

有没有办法在python中获得如此优雅的输出? 我需要进行按列分组并进行基本测试:ttest、wilcox测试、chisq、fisher和一些回归。我不喜欢使用R包导入Python的决策。你知道吗


Tags: 数据testdfdatagroupfunctionv3v2