Re: [問題] 資料重新排序

看板R_Language作者 (天)時間10年前 (2015/10/20 11:58), 編輯推噓2(200)
留言2則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《CKAXI (我不在...)》之銘言: : [問題類型]: : : 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) : : [軟體熟悉度]: : 新手(沒寫過程式,R 是我的第一次) : [問題敘述]: : 我有一筆資料,想依照特定的變項重新排列 : 原始: : fname lname item1 item3 id item2 pid item4 item5 : Jada W 4 5 258 3 NA NA NA : John W 3 4 123 2 989 5 2 : Tana W 4 3 321 5 NA NA NA : Brooke G 2 4 NA NA 654 3 4 : Ella W 3 5 NA NA 456 4 2 : Johnna B 3 4 NA NA 369 4 3 : 想排成: : fname lname id pid item1 item2 item3 item4 item5 : Jada W 258 NA 4 3 5 NA NA : John W 123 989 3 2 4 5 2 : Tana W 321 NA 4 5 3 NA NA : Brooke G NA 654 2 NA 4 3 4 : Ella W NA 456 3 NA 5 4 2 : Johnna B NA 369 3 NA 4 4 3 : [程式範例]: : : 請問一下是否是使用"order"這個功能?麻煩版上高手提供提示,謝謝 不知道你是不是說這樣: df = read.table(textConnection(" fname lname item1 item3 id item2 pid item4 item5 Jada W 4 5 258 3 NA NA NA John W 3 4 123 2 989 5 2 Tana W 4 3 321 5 NA NA NA Brooke G 2 4 NA NA 654 3 4 Ella W 3 5 NA NA 456 4 2 Johnna B 3 4 NA NA 369 4 3"), header=TRUE) df[order(names(df))] fname id item1 item2 item3 item4 item5 lname pid 1 Jada 258 4 3 5 NA NA W NA 2 John 123 3 2 4 5 2 W 989 3 Tana 321 4 5 3 NA NA W NA 4 Brooke NA 2 NA 4 3 4 G 654 5 Ella NA 3 NA 5 4 2 W 456 6 Johnna NA 3 NA 4 4 3 B 369 我一般還是會建議用dplyr library(dplyr) df %>% select(lname, id, pid, starts_with('item')) lname id pid item1 item3 item2 item4 item5 1 W 258 NA 4 5 3 NA NA 2 W 123 989 3 4 2 5 2 3 W 321 NA 4 3 5 NA NA 4 G NA 654 2 4 NA 3 4 5 W NA 456 3 5 NA 4 2 6 B NA 369 3 4 NA 4 3 FYI -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.109.73.190 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1445313523.A.E19.html

10/20 21:44, , 1F
謝謝celestialgod提供另一種方法
10/20 21:44, 1F

10/23 01:36, , 2F
10/23 01:36, 2F
文章代碼(AID): #1M9RlpuP (R_Language)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #1M9RlpuP (R_Language)