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

看板R_Language作者 (小麥)時間9年前 (2016/05/26 16:02), 9年前編輯推噓5(508)
留言13則, 4人參與, 最新討論串1/1
文章分類提示: - 問題: 當你想要問問題時,請使用這個類別 [問題類型]: 程式諮詢(我想用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 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.136.187.79 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1464249754.A.FE0.html ※ 編輯: ayugioh2003 (140.136.187.79), 05/26/2016 16:04:34

05/26 16:46, , 1F
05/26 16:46, 1F
好,我來試看看

05/26 16:47, , 2F
library(data.table); DT<-data.table(YourTable)
05/26 16:47, 2F

05/26 16:47, , 3F
DT[,mean(Y),by=.(S,A,B)]
05/26 16:47, 3F
昨天有試著跑看看,可是用不起來 orz

05/26 20:49, , 4F
內建的 function 中可以用 aggregate()
05/26 20:49, 4F

05/26 20:49, , 5F
但其實你可以考慮直接建立線性混合模型。
05/26 20:49, 5F
想請教,線性混合模型,指的就是多元回歸嗎(統計沒有學很好 orz) 因為我原本預計是要跑 anova,之後可能會再跑事後比較 所以想說重複的資料應該要合併起來,依變數再取平均 用你說的建立線性混合模型,可以方便作到這些事情嗎 @@

05/26 21:42, , 6F
don't use aggregate #1ME0ebEk (R_Language)
05/26 21:42, 6F

05/26 23:54, , 7F
多謝補充,原po小心。
05/26 23:54, 7F
感謝兩位提醒

05/27 10:30, , 8F
我蠻好奇,兩個類別變數可以預測連續變數嗎?
05/27 10:30, 8F
感謝大家回覆~ 目前留言中有提到 dplyr, plyr, data.table, 內建 aggregate() 這些方法 等我測試完這些方法,整理一下後,有時間就回來發文 另外, clansoda 問到,類別變數可以預測連續變數嗎 應該可以吧,印象中,跑多元回歸的時候,轉換成虛擬變項就可以了 不過我是想跑 anova,獨變項需要類別變數,這樣就滿符合了 XD ※ 編輯: ayugioh2003 (140.136.187.78), 05/27/2016 11:55:51

05/27 12:50, , 9F
可以預測,ANOVA也可以是種回歸。
05/27 12:50, 9F

05/27 14:27, , 10F
我直接拿去跑anova 看起來是可以,所以兩個dummy
05/27 14:27, 10F

05/27 14:27, , 11F
variable 各自以baseline來看然後預測嗎?
05/27 14:27, 11F

05/27 16:31, , 12F
就如你所說,按建立dummy的方式填數字到迴歸式裡而已。
05/27 16:31, 12F

05/27 18:01, , 13F
了解,那原PO就是跑完資料整理在AOV應該就是解答了
05/27 18:01, 13F
※ 編輯: ayugioh2003 (49.159.12.187), 05/28/2016 00:23:27
文章代碼(AID): #1NHgsQ_W (R_Language)
文章代碼(AID): #1NHgsQ_W (R_Language)