[問題] plyr

看板R_Language作者 (零度空間)時間9年前 (2015/07/01 17:49), 編輯推噓0(003)
留言3則, 3人參與, 最新討論串1/5 (看更多)
ctrl + y 可以刪除一整行,請將不需要的內容刪除 文章分類提示: - 問題: 當你想要問問題時,請使用這個類別 [問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 請把以下不需要的部份刪除 使用者(已經有用R 做過不少作品) [問題敘述]: 請簡略描述你所要做的事情,或是這個程式的目的 set.seed(1) d<- data.frame(year = rep(2000:2002, each = 3),3+ count = round(runif(9, 0, 20))) print(d) 資料長這樣 year count 1 2000 5 2 2000 7 3 2000 11 4 2001 18 5 2001 4 6 2001 18 7 2002 19 8 2002 13 9 2002 13 ddply(d, "year", summarise, tol = sum(count)) 會變這樣子 year tol 1 2000 23 2 2001 40 3 2002 45 但我想讓它變 year tol 計數 1 2000 23 3 2 2001 40 3 3 2002 45 3 3<-代表 2000 出現三次 該如何改寫? [程式範例]: 張貼能夠重現錯誤的程式碼,可以幫助版友更快的幫你解決問題 [環境敘述]: [關鍵字]: plyr 選擇性,也許未來有用 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.220.43.131 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1435744176.A.867.html

07/01 20:28, , 1F
其你可以先對raw data算完每年有幾筆,然後cbind回result
07/01 20:28, 1F

07/01 20:56, , 2F
後面再加一個count = n()就好
07/01 20:56, 2F

07/02 09:10, , 3F
我把數千筆資料 用EXCEL 驗證 是沒錯
07/02 09:10, 3F
文章代碼(AID): #1LaxUmXd (R_Language)
討論串 (同標題文章)
文章代碼(AID): #1LaxUmXd (R_Language)