我试图通过一组变量将我的观察结果分组到另一组变量下,最后一组变量下。这是我的例子:
country name ethnicity party
Afghanistan john Pashtun X Party
Afghanistan oliver Pashtun Y Party
Afghanistan brad Tajik X Party
Afghanistan chad Hazara X Party
Bosnia virgin Serb P Party
Bosnia mary Serb P Party
Bosnia jesus Croat C Party
我要做的应该是创建每个政党下所有现有种族的集合,并计算一个政党、一个国家内每个种族下有多少人,看起来像这样:
country party ethnicity count
Afghanistan X Party Pashtun 1
Afghanistan X Party Tajik 1
Afghanistan X Party Hazara 1
Afghanistan Y Party Pashtun 1
Afghanistan Y Party Tajik 0
Afghanistan Y Party Hazara 0
Bosnia P Party Serb 2
Bosnia P Party Croat 0
Bosnia C Party Serb 0
Bosnia C Party Croat 1
到目前为止,我已经尝试了 group_by
和 aggregate
函数,但没有成功。
最佳答案
这是一个非常简单的操作,请阅读本书https://r4ds.had.co.nz/
library(data.table)
library(tidyverse)
df_example <- fread("country name ethnicity party coolness
Afghanistan john Pashtun X_Party cool
Afghanistan oliver Pashtun Y_Party not_cool
Afghanistan brad Tajik X_Party cool
Afghanistan chad Hazara X_Party not_cool
Bosnia virgin Serb P_Party cool
Bosnia mary Serb P_Party cool
Bosnia jesus Croat C_Party not_cool" ,
header = TRUE)
df_example %>%
group_by(country,ethnicity,party) %>%
add_tally() %>%
select(-name) %>% # Some stuff that you don't want
distinct()
关于r - 在 R 中,一个变量如何在另一个变量下分支多个变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59579796/