尝试按某个变量R的最大数目筛选数据
我目前有一个国家的数据集(语言),每个国家的通用语言和说每种语言的人数(langCountryPop)。我想更改我的数据,以便在每个国家组中,我可以按降序订购langCountryPop。我基本上是在试图从每个国家提取,每个国家最常用的语言是什么,并且只有这些数据可以查看 这就是我的数据当前的样子 以下是数据集中第一个国家的预期产出:尝试按某个变量R的最大数目筛选数据,r,dataframe,sorting,grouping,R,Dataframe,Sorting,Grouping,我目前有一个国家的数据集(语言),每个国家的通用语言和说每种语言的人数(langCountryPop)。我想更改我的数据,以便在每个国家组中,我可以按降序订购langCountryPop。我基本上是在试图从每个国家提取,每个国家最常用的语言是什么,并且只有这些数据可以查看 这就是我的数据当前的样子 以下是数据集中第一个国家的预期产出: languages = data.frame("country" = rep("Andorra", 5), "
languages = data.frame("country" = rep("Andorra", 5), "lang" = c("Catalan","Spanish", "French", "Portuguese", "English"), "langCountryPop" = c(31000, 24600, 2400, 2100, 770))
我不确定如何对整个数据集重复此操作
这是我的尝试:
x = lang %>% select(country, lang, langCountryPop) %>% group_by(country) %>% sort(-lang$langCountryPop)
对我的数据进行排序有什么建议吗?我们不需要这里的
分组依据,而是使用排列,而不是排序。另外,$
将提取打破组属性的整个列
library(dplyr)
lagn2 <- lang %>%
select(country, lang, langCountryPop) %>%
arrange(country, desc(langCountryPop))
为了进行筛选,您可以使用:
df %>% group_by(country) %>% filter(langCountryPop==max(langCountryPop))
其中,df
是原始数据
df %>% group_by(country) %>% filter(langCountryPop==max(langCountryPop))