在我的DATA以下,我想知道如何summarize()的6个不同的种族(Hispanic,AmIndian,Asian,White,Pacific,AsiaPacific)的数量 Select ("Y")当Ethinc_overall!="B"

library(tidyverse)

DATA <- read.table(h=TRUE,text=
"EL_Type Language Black Hispanic AmIndian Asian White Pacific AsiaPacific Ethinc_overall
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     Y     N       N           Y              M
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    Y     N     Y       N           N              H
 Current  English Black        Y    Y     N     N       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    Y     N     Y       N           N              H
 Current  English Black        Y    Y     N     Y       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     Y       N           N              M
 Current  English Black        N    Y     N     N       N           N              M
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     Y     N       N           Y              M
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    Y     N     N       N           N              H
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        Y    N     N     Y       N           N              H
 Current  English Black        Y    Y     N     N       Y           Y              H
 Current  English Black        Y    Y     N     N       Y           Y              H
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    Y     Y     Y       Y           Y              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    N     N     Y       N           N              H
 Current  English Black        Y    N     N     Y       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    N     N     Y       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    N     N     Y       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        N    N     N     N       N           N              B
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        Y    N     N     N       N           N              H
 Current  English Black        N    N     N     Y       N           N              M
 Current  English Black        N    N     N     N       N           N              B")

推荐答案

我们可以按组对所需列进行汇总,然后将结果从宽格式转换为长格式:

DATA %>% 
  filter(Ethinc_overall != "B") %>% 
  summarise(across(Hispanic:AsiaPacific, 
                   list(Y = ~ sum(. == "Y"))), .by = Ethinc_overall) %>% 
  pivot_longer(-Ethinc_overall, values_to = "count") %>% 
  separate(name, into = c("ethnicity", "Y")) %>% 
  # filter(count > 0) %>% 
  select(-Y)

#> # A tibble: 12 x 3
#>    Ethinc_overall ethnicity   count
#>    <chr>          <chr>       <int>
#>  1 H              Hispanic       23
#>  2 H              AmIndian        8
#>  3 H              Asian           1
#>  4 H              White           9
#>  5 H              Pacific         3
#>  6 H              AsiaPacific     3
#>  7 M              Hispanic        0
#>  8 M              AmIndian        1
#>  9 M              Asian           2
#> 10 M              White           2
#> 11 M              Pacific         0
#> 12 M              AsiaPacific     2

或者更好,从pivot_longer开始,然后是summarise:

DATA %>% 
  filter(Ethinc_overall != "B") %>% 
  pivot_longer(Hispanic:AsiaPacific, names_to = "ethnicity") %>% 
  summarise(count = sum(value =="Y"), .by = c(Ethinc_overall, ethnicity))

#> # A tibble: 12 x 3
#>    Ethinc_overall ethnicity   count
#>    <chr>          <chr>       <int>
#>  1 H              Hispanic       23
#>  2 H              AmIndian        8
#>  3 H              Asian           1
#>  4 H              White           9
#>  5 H              Pacific         3
#>  6 H              AsiaPacific     3
#>  7 M              Hispanic        0
#>  8 M              AmIndian        1
#>  9 M              Asian           2
#> 10 M              White           2
#> 11 M              Pacific         0
#> 12 M              AsiaPacific     2

创建于2024-02-09年第reprex v2.0.2

R相关问答推荐

geom_raster不适用于x比例中超过2,15的值

无法运行通过R中的Auto.arima获得的ARIMA模型

使用gggrassure减少地块之间的空间

将向量组合到一个数据集中,并相应地命名行

移除仪表板Quarto中顶盖和车身之间的白色区域

多个模拟序列间的一种预测回归关系

在RStudio中堆叠条形图和折线图

在不丢失空值的情况下取消列出嵌套列表

R中边际效应包中Logistic回归的交互作用风险比

无法定义沿边轨迹的 colored颜色 渐变(与值无关)

R中1到n_1,2到n_2,…,n到n_n的所有组合都是列表中的向量?

合并后返回列表的数据帧列表

如何计算R glm probit中的线性预测因子?

如何在使用箭头R包(箭头::OPEN_DATASSET)和dplyr谓词时编写具有整齐计算的函数?

按列中显示的配对组估算NA值

解析嵌套程度极高的地理数据

层次树图的数据树

避免在图例中显示VLINS组

子样本间系数检验的比较

如何在GGPlot中控制多个图例和线型