我如何从一个向量中获得TRUE的百分比?



这是用于导出问题中第一个表的代码。

JH %>% group_by(ATT_ID, CAR=="B") %>%
summarize(count = n(), .groups = "drop")
<表类>ATT_ID汽车= ="B"数tbody><<tr>一个假1两个真正13对33假5四假25真正4六真正8六假4

您可以这样做:

dt %>%
group_by(ATT_ID) %>%
summarize(perc = sprintf("%3.1f%%", 100*sum(Count*`CAR =="B"`)/sum(Count)))

输出:

# A tibble: 6 × 2
ATT_ID perc  
<chr>  <chr> 
1 FIVE   100.0%
2 FOUR   0.0%  
3 ONE    0.0%  
4 SIX    66.7% 
5 THREE  37.5% 
6 TWO    100.0%

输入:

structure(list(ATT_ID = c("ONE", "TWO", "THREE", "THREE", "FOUR", 
"FIVE", "SIX", "SIX"), `CAR =="B"` = c(FALSE, TRUE, TRUE, FALSE, 
FALSE, TRUE, TRUE, FALSE), Count = c(1, 1, 3, 5, 2, 4, 8, 4)), class = c("tbl_df", 
"tbl", "data.frame"), row.names = c(NA, -8L))

最新更新