[問題] 二維的資料如何轉換回一維

看板R_Language作者 (chy)時間8年前 (2017/04/20 00:37), 8年前編輯推噓2(200)
留言2則, 1人參與, 最新討論串1/2 (看更多)
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [問題敘述]: 我有一筆資料大致上是這樣的格式: Time Class rank1 rank2 rank3 2017/4/6 XXXX A1 B1 D1 2017/4/7 YYYY A2 C2 B2 2017/4/7 XXXX A1 C1 E1 2017/4/7 YYYY B2 A2 C2 A1, B1, C1, A2, C2....都是人名,分別為XXXX和YYYY班的學生。 所以第一筆資料就是4/6號,XXXX班的學生,第一名是A1、第二名是B1,最後是D1。 但是這樣的資料無法製作折線圖觀察學生們在這兩天的排名進退步狀況, 實際資料的時間會橫跨兩周,班級、人名和排名也都較多。 所以,會希望資料能轉換成: Time Class student rank 2017/4/6 XXXX A1 1 2017/4/6 XXXX B1 2 2017/4/6 XXXX D1 3 2017/4/6 YYYY A2 1 2017/4/6 YYYY B2 3 2017/4/6 YYYY C2 2 2017/4/7 XXXX A1 1 2017/4/7 XXXX C1 2 2017/4/7 XXXX E1 3 2017/4/7 YYYY A2 2 2017/4/7 YYYY B2 1 2017/4/7 YYYY C2 3 如此資料才可以繪製摺線圖吧? 過去有用過dplyr進行篩選或比對等功能, 不過現在這種格式就不知道該怎麼用了... ============================================================== 透過reshape2的melt順利轉換成長表格了, 那麼我能否再轉換成: student 2017/4/6 2017/4/7 A1 1 1 B1 2 C1 2 D1 3 E1 3 A2 1 2 B2 3 1 C2 2 3 我記得應該很容易阿,可是怎麼覺得自己變好笨.. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 119.14.64.212 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1492619860.A.5F3.html

04/20 00:55, , 1F
Google R wide table to long table
04/20 00:55, 1F

04/20 00:56, , 2F
之後再字串處理一下就可以了
04/20 00:56, 2F
※ 編輯: chy0253350 (119.14.64.212), 04/20/2017 01:47:01
文章代碼(AID): #1Ozv9KNp (R_Language)
文章代碼(AID): #1Ozv9KNp (R_Language)