通过列迭代效应量计算
Iterating Effect Size Calculations Through Columns
我目前正在比较 R 上高危人群和正常人群大脑中 159 个区域 (ROI) 的大小。我最初使用此循环计算 lm 模型 p 值:
storage <- list()
for(i in names(ThalPC)[-c(1:8)]){
storage[[i]] <- lm(get(i) ~ Status, ThalPC)
}
table <- storage %>% tibble(
dvsub = names(.),
untidied = .
) %>%
mutate(tidy = map(untidied, broom::tidy)) %>%
unnest(tidy)
tab <- as.data.frame(table)
to <- subset(tab, select = -c(2))
newtable <- filter(to, term == "StatusControl")
ThalPC=我的数据框
状态 = 他们作为对照或高危人群的状态
现在,我有大约 59 个具有显着 p 值的区域,我希望计算它们的效果大小。目前我正在尝试使用这个循环:
stor <- list()
for(i in names(ThalPC)[-c(1:9)]) {
stor[[i]] <- lm(get(i) ~ Status, ThalPC)
try <- effectsize(stor[[i]], type="eta")
}
但是,我收到以下错误:
Error in get(i) : object 'Left_LGN' not found
(Left_LGN是我正在研究的区域,所有159个区域都通过数据框设置为列)
也许我想多了,有没有人知道任何简单的解决方案/更好的方法来获得他们的效果大小?
我仍然是 R 和统计学的初学者,非常感谢您的投入!!
谢谢!
我猜你在 运行 之前使用了 attach(ThalPC)
你的第一个脚本将 ThalPC 的列添加到搜索路径。相反,尝试将对 lm
的调用构造为:
stor[[i]] <- lm(as.formula(paste(i, "~ Status")),
data = ThalPC)
看来您可能还想将 effectsize
的输出也收集为列表的元素,否则您每次都会覆盖它。
我目前正在比较 R 上高危人群和正常人群大脑中 159 个区域 (ROI) 的大小。我最初使用此循环计算 lm 模型 p 值:
storage <- list()
for(i in names(ThalPC)[-c(1:8)]){
storage[[i]] <- lm(get(i) ~ Status, ThalPC)
}
table <- storage %>% tibble(
dvsub = names(.),
untidied = .
) %>%
mutate(tidy = map(untidied, broom::tidy)) %>%
unnest(tidy)
tab <- as.data.frame(table)
to <- subset(tab, select = -c(2))
newtable <- filter(to, term == "StatusControl")
ThalPC=我的数据框 状态 = 他们作为对照或高危人群的状态
现在,我有大约 59 个具有显着 p 值的区域,我希望计算它们的效果大小。目前我正在尝试使用这个循环:
stor <- list()
for(i in names(ThalPC)[-c(1:9)]) {
stor[[i]] <- lm(get(i) ~ Status, ThalPC)
try <- effectsize(stor[[i]], type="eta")
}
但是,我收到以下错误:
Error in get(i) : object 'Left_LGN' not found
(Left_LGN是我正在研究的区域,所有159个区域都通过数据框设置为列)
也许我想多了,有没有人知道任何简单的解决方案/更好的方法来获得他们的效果大小?
我仍然是 R 和统计学的初学者,非常感谢您的投入!! 谢谢!
我猜你在 运行 之前使用了 attach(ThalPC)
你的第一个脚本将 ThalPC 的列添加到搜索路径。相反,尝试将对 lm
的调用构造为:
stor[[i]] <- lm(as.formula(paste(i, "~ Status")),
data = ThalPC)
看来您可能还想将 effectsize
的输出也收集为列表的元素,否则您每次都会覆盖它。