如何使用重复测量(R 中的 ARTool 包)计算排名对齐方差分析的部分 eta 平方?
How can I calculate partial eta squared for rank-aligned ANOVA with repeated measures (ARTool package in R)?
我使用 RStudio 中的 ARTool 包计算了几个排名对齐的方差分析。请注意,所有包含的变量都是重复测量(即,受试者内;所有参与者都经历了所有实验操作)。
根据此来源 https://cran.r-project.org/web/packages/ARTool/vignettes/art-effect-size.html,输出应分别包括部分 eta 平方和平方和。
但是,我发现只有主体间设计的输出包含平方和。如果我计算受试者内方差分析,则不会打印部分 eta 平方或平方和。有谁知道为什么会发生这种情况?
(我已经将 ARTool 包更新到最新版本)
该示例对该数据集实际上没有意义,只是为了演示:
data("cars")
cars$id <- 1:50
cars_long <- reshape2::melt(cars, id = "id")
cars_long <- cars_long[base::order(cars_long$id), ]
ardat_cars_bs <- ARTool::art(data = cars_long,
formula = value ~ variable)
ardat_cars_ws <- ARTool::art(data = cars_long,
formula = value ~ variable + (1|id))
aranova_cars_bs <- stats::anova(ardat_cars_bs) #between-subjects rank-aligned ANOVA
base::print(aranova_cars_bs, verbose = TRUE) #prints sum of squares needed to calculate partial eta squared
aranova_cars_ws <- stats::anova(ardat_cars_ws) #within-subjects rank-aligned ANOVA
base::print(aranova_cars_ws, verbose = TRUE) #does not print sum of squares
请注意:我也在这里问过这个问题https://stats.stackexchange.com/questions/559730/how-can-i-calculate-partial-eta-squared-for-rank-aligned-anova-with-repeated-mea
部分 eta[=20=]-平方也可以根据 F 值和自由度计算。
请注意,在撰写本文时,请注意:rcompanion.org/handbook/F_16.html
一个简单的例子:
Y = c(1,2,3,4,5,6,7,8,9,10,11,12)
Group = factor(c(rep("A", 6), rep("B", 6)))
ID = factor(rep(c("i", "ii"), 6))
Data = data.frame(Group, ID, Y)
library(ARTool)
model = art(Y ~ Group + (1|ID), data=Data)
Result = anova(model)
Result$part.eta.sq = with(Result, `F` * `Df` / (`F` * `Df` + `Df.res`))
Result
### Analysis of Variance of Aligned Rank Transformed Data
###
### Table Type: Analysis of Deviance Table (Type III Wald F tests with Kenward-Roger df)
### Model: Mixed Effects (lmer)
### Response: art(Y)
###
### F Df Df.res Pr(>F) part.eta.sq
### 1 Group 30.857 1 9 0.00035418 0.77419 ***
我使用 RStudio 中的 ARTool 包计算了几个排名对齐的方差分析。请注意,所有包含的变量都是重复测量(即,受试者内;所有参与者都经历了所有实验操作)。
根据此来源 https://cran.r-project.org/web/packages/ARTool/vignettes/art-effect-size.html,输出应分别包括部分 eta 平方和平方和。 但是,我发现只有主体间设计的输出包含平方和。如果我计算受试者内方差分析,则不会打印部分 eta 平方或平方和。有谁知道为什么会发生这种情况? (我已经将 ARTool 包更新到最新版本)
该示例对该数据集实际上没有意义,只是为了演示:
data("cars")
cars$id <- 1:50
cars_long <- reshape2::melt(cars, id = "id")
cars_long <- cars_long[base::order(cars_long$id), ]
ardat_cars_bs <- ARTool::art(data = cars_long,
formula = value ~ variable)
ardat_cars_ws <- ARTool::art(data = cars_long,
formula = value ~ variable + (1|id))
aranova_cars_bs <- stats::anova(ardat_cars_bs) #between-subjects rank-aligned ANOVA
base::print(aranova_cars_bs, verbose = TRUE) #prints sum of squares needed to calculate partial eta squared
aranova_cars_ws <- stats::anova(ardat_cars_ws) #within-subjects rank-aligned ANOVA
base::print(aranova_cars_ws, verbose = TRUE) #does not print sum of squares
请注意:我也在这里问过这个问题https://stats.stackexchange.com/questions/559730/how-can-i-calculate-partial-eta-squared-for-rank-aligned-anova-with-repeated-mea
部分 eta[=20=]-平方也可以根据 F 值和自由度计算。
请注意,在撰写本文时,请注意:rcompanion.org/handbook/F_16.html
一个简单的例子:
Y = c(1,2,3,4,5,6,7,8,9,10,11,12)
Group = factor(c(rep("A", 6), rep("B", 6)))
ID = factor(rep(c("i", "ii"), 6))
Data = data.frame(Group, ID, Y)
library(ARTool)
model = art(Y ~ Group + (1|ID), data=Data)
Result = anova(model)
Result$part.eta.sq = with(Result, `F` * `Df` / (`F` * `Df` + `Df.res`))
Result
### Analysis of Variance of Aligned Rank Transformed Data
###
### Table Type: Analysis of Deviance Table (Type III Wald F tests with Kenward-Roger df)
### Model: Mixed Effects (lmer)
### Response: art(Y)
###
### F Df Df.res Pr(>F) part.eta.sq
### 1 Group 30.857 1 9 0.00035418 0.77419 ***