问题描述
score <- c(1,2,3,4,5,6,7,8)
Condition <- c(rep(1,each=5),rep(2,each=3))
Test <- data.frame(Condition,score)
我尝试使用以下代码从 effsize 包中运行 cohen.d:
cohen.d(Test,group="Condition")
但是我得到了这个错误:
Error in cohen.d.default(Test,group = "Condition") : First parameter must be a numeric type
即使两列都是数字(我检查了工作区并使用 as.numeric)。
我可以知道我做错了什么吗?我知道之前有人已经解决了这个问题 (here's the link),但我不明白她做了什么。
谢谢
解决方法
将 Condition
列更改为因子。
Test$Condition <- factor(Test$Condition)
您可以通过两种方式应用该功能。
- 使用值。
library(effsize)
cohen.d(Test$Score,Test$Condition)
- 使用公式语法。
cohen.d(Score~Condition,Test)