[問題] 如何合併有相同因子的資料並取依變項平均

作者: 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