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

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

基于每組行數的子集數據幀

基于每組行數的子集數據幀

陪伴而非守候 2019-06-25 11:04:22
基于每組行數的子集數據幀我有這樣的數據,其中一些“名字”出現超過3次:df <- data.frame(name = c("a", "a", "a", "b", "b", "c", "c", "c", "c"), x = 1:9)   name x1    a 12    a 23    a 34    b 45    b 56    c 67    c 78    c 89    c 9我希望根據每個級別中的行數(觀察)對數據進行子集(篩選)。name變量。如果某一水平name發生3次以上,我要刪除屬于該級別的所有行。所以在這個例子中,我們會刪除觀察name == c,因為有> 3該組中的行:  name x1    a 12    a 23    a 34    b 45    b 5我寫了這段代碼,但沒能讓它起作用。as.data.frame(table(unique(df)$name))subset(df, name > 3)
查看完整描述

2 回答

?
慕工程0101907

TA貢獻1887條經驗 獲得超5個贊

使用dplyr一攬子:

df %>%
  group_by(name) %>%
  filter(n() < 4)# A tibble: 5 x 2# Groups:   name [2]
  name      x  <fct> <int>1 a         12 a         23 a         34 b         45 b         5

n()返回當前組中的觀察數,因此我們可以group_by名稱,然后只保留屬于該組中行數小于4的部分的行。


查看完整回答
反對 回復 2019-06-25
  • 2 回答
  • 0 關注
  • 585 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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