首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有什么方法可以运行pingouin.anova分析的循环吗?

有什么方法可以运行pingouin.anova分析的循环吗?
EN

Stack Overflow用户
提问于 2022-05-16 16:38:16
回答 1查看 87关注 0票数 0

我相信这很简单,但我仍然在学习巨蟒。我需要帮助,找出如何在熊猫数据中的列上迭代,并为每个列运行pingouin分析。从现在起,我可以跑了

代码语言:javascript
复制
pg.anova(data=df, dv='variable1', between='Group', detailed=True)

虽然我得到了我想要的结果,但我有180个变量,因此能够自动实现这一点将有很长的路要走。如果有一种方法也可以将p值结果作为向量添加到dataframe中,我将非常感激。或者,只要我能够将anova结果绑定到每个变量名,就可以将结果保存在另一个文件中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-16 17:18:45

anova的结果是熊猫Dataframes,因此很容易将它们附加到单个DataFrame中,您只需创建一个新变量就可以识别每个因变量:

代码语言:javascript
复制
import pingouin as pg
import pandas as pd

# load data
df = pg.read_dataset('mixed_anova')
# list of dependent variables
dep_vars = ['Scores', 'Subject']
# List with anova results 
list_results = []

for dv in dep_vars:
  # run anova and create dv variable to identify dependent variable
  aov = pg.anova(data=df, dv=dv, between='Group', detailed=True)\
    .assign(dv=dv)
  # append to list of results
  list_results.append(aov)

# concat all results into a DataFrame
df_results = pd.concat(list_results, axis=0)

# Export to Excel
df_results.to_excel('results.xlsx')
df_results

DataFrame df_results包含所有的Anova结果,变量dv帮助您识别因变量。结果也被导出到Excel中。如果只需要p值和dep变量,则可以筛选此df:

代码语言:javascript
复制
df_results.query('Source=="Group"').filter(['p-unc', 'dv'])

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72262660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档