[问题] 如何合并有相同因子的资料并取依变项平均

楼主: ayugioh2003 (小麥)   2016-05-26 16:02:32
文章分类提示:
- 问题: 当你想要问问题时,请使用这个类别
[问题类型]:
程式咨询(我想用R 做某件事情,但是我不知道要怎么用R 写出来)
[软件熟悉度]:
入门(写过其他程式,只是对语法不熟悉)
[问题叙述]:
请简略描述你所要做的事情,或是这个程式的目的
第一次想上来问问题,突然断线文章就不见了 QQ 只好重打
如果问题描述不清楚,请见谅
最近在整理资料,本来是用 excel,但想看看 R 有没有办法整理
因为要用变异数分析(受试者内),所以想把资料整理成能跑 anova 的格式
想问的是,能不能将有相同因子的资料,把它们合并后,依变量变成这些资料的平均
举个例子
S = Subject 受试者
A = 第一个独变项(因子)
B = 第二个独变项(因子)
Y = 依变项
S A B Y
1 L pic 1234
1 L pic 1883
1 L word 732
1 L word 273
1 R pic 1843
1 R pic 1362
1 R word 321
1 R word 234
2 L pic 2983
2 L pic 1283
2 L word 321
2 L word 532
2 R pic 2492
2 R pic 2182
2 R word 324
2 R word 583
.
.
能不能变成这样(合并相同因子的资料,依变量取平均)
S A B Y
1 L pic 1558.5(=(1234+1883)/2)
1 L word 502.5
1 R pic 1602.5
1 R word 277.5
2 L pic 2133
2 L word 426.5
2 R pic 2337
2 R word 453.5
.
.
之前是在 excel 上是用 DAVERAGE() 语法筛选,再慢慢贴上
但资料量多,有点累...
因此想问用在 R 上能不能作到这件事情(相同因子的资料合并后 依变项取平均)
(或是想听听其他见解,例如 excel 上能不能更方便作到这件事,
或是 anova 其实不需要做这个前置动作之类的)
谢谢
[程式范例]:
[环境叙述]:
rRstudio
[关键字]:
资料整理, 合并资料, 取平均, Anova
作者: clansoda (小笨)   2016-05-26 16:46:00
作者: cywhale (cywhale)   2016-05-26 16:47:00
library(data.table); DT<-data.table(YourTable)DT[,mean(Y),by=.(S,A,B)]
作者: andrew43 (讨厌有好心推文后删文者)   2016-05-26 20:49:00
内建的 function 中可以用 aggregate()但其实你可以考虑直接建立线性混合模型。
作者: celestialgod (天)   2016-05-26 21:42:00
don't use aggregate #1ME0ebEk (R_Language)
作者: andrew43 (讨厌有好心推文后删文者)   2016-05-26 23:54:00
多谢补充,原po小心。
作者: clansoda (小笨)   2016-05-27 10:30:00
我蛮好奇,两个类别变量可以预测连续变量吗?
作者: andrew43 (讨厌有好心推文后删文者)   2016-05-27 12:50:00
可以预测,ANOVA也可以是种回归。
作者: clansoda (小笨)   2016-05-27 14:27:00
我直接拿去跑anova 看起来是可以,所以两个dummyvariable 各自以baseline来看然后预测吗?
作者: andrew43 (讨厌有好心推文后删文者)   2016-05-27 16:31:00
就如你所说,按建立dummy的方式填数字到回归式里而已。
作者: clansoda (小笨)   2016-05-27 18:01:00
了解,那原PO就是跑完资料整理在AOV应该就是解答了

Links booklink

Contact Us: admin [ a t ] ucptt.com