簡體   English   中英

group_by和summary()使用dplyr / tidyverse在R中進行多項操作

[英]group_by and summarize() multiple things in R using dplyr/tidyverse

我正在嘗試找到平均年齡最高的國家,但我還需要過濾掉數據框中條目少於5個的國家。 我嘗試了以下操作,但不起作用:

bil %>% 
  group_by(citizenship,age) %>% 
  mutate(n=count(citizenship), theMean=mean(age,na.rm=T)) %>% 
  filter(n>=5) %>% 
  arrange(desc(theMean))

bil是數據集,我試圖計算每個國家/地區有多少條目,過濾出條目少於5個的國家/地區,找到每個國家/地區的平均年齡,然后找到平均值最高的國家/地區。 我對如何同時做兩件事感到困惑。 如果我一次做一個匯總,我將丟失其余數據。

也許,這可能會有所幫助。 請注意, count中的參數“ x”是tbl/data.frame 因此,我們不使用count而是按“公民身份”進行分組,並使用n()獲得值的頻率,獲取“ age”的mean (不確定“ age”是否為分組變量)並進行filter

bil %>%
   group_by(citizenship) %>% 
   mutate(n = n()) %>%     
   mutate(theMean = mean(age, na.rm=TRUE)) %>% 
   filter(n>=5) %>%
   arrange(desc(theMean))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM