亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

每組計數觀察/行數,并將結果添加到數據幀中

每組計數觀察/行數,并將結果添加到數據幀中

HUX布斯 2019-06-15 18:05:13
每組計數觀察/行數,并將結果添加到數據幀中說我有一個data.frame目的:df <- data.frame(name=c('black','black','black','red','red'),                  type=c('chair','chair','sofa','sofa','plate'),                  num=c(4,5,12,4,3))現在,我要計算每個組合的觀察次數。name和type..可以這樣做:table(df[ , c("name","type")])也有可能plyr(雖然我不知道該怎么做)。但是,如何將結果合并到原始數據框架中呢?所以結果會是這樣的:df#    name  type num count# 1 black chair   4     2# 2 black chair   5     2# 3 black  sofa  12     1 # 4   red  sofa   4     1# 5   red plate   3     1哪里count現在存儲聚合的結果。解決方案plyr學習也可能很有趣,不過我想看看這是如何用R基完成的。
查看完整描述

3 回答

?
互換的青春

TA貢獻1797條經驗 獲得超6個贊


你可以用ave:

df$count <- ave(df$num, df[,c("name","type")], FUN=length)


查看完整回答
反對 回復 2019-06-15
?
桃花長相依

TA貢獻1860條經驗 獲得超8個贊

你可以這樣做:

> ddply(df,.(name,type),transform,count = NROW(piece))
   name  type num count1 black chair   4     22 black chair   5     23 black  sofa  12     14   red plate   3     15   
   red  sofa   4     1

或者更直觀地說,

> ddply(df,.(name,type),transform,count = length(num))
   name  type num count1 black chair   4     22 black chair   5     23 black  sofa  12     14   red plate   3     15  
    red  sofa   4     1


查看完整回答
反對 回復 2019-06-15
  • 3 回答
  • 0 關注
  • 572 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號