如何计算R中特定观测值的两个变量之间的百分比?

DC:

我正在尝试计算相对于包含5个(+1个NA)不同收入等级的变量的二进制变量的发生率/百分比。我正在使用:

afghan %>% group_by(income)  %>% 
  summarize(violent.exp.ISAF = n()) %>%
  mutate(Percentage = violent.exp.ISAF/sum(violent.exp.ISAF)*100)

但这给了我二进制变量相对于整个表的一般百分比,而不仅仅是在特定的收入范围内,如下所示:

# income          violent.exp.taliban Percentage
#  <chr>                         <int>      <dbl>
#1 10,001-20,000                   616     22.4  
#2 2,001-10,000                   1420     51.6  
#3 20,001-30,000                    93      3.38 
#4 less than 2,000                 457     16.6  
#5 over 30,000                      14      0.508
#6 NA                              154      5.59 

我想让二元变量的百分比恰好在该特定收入范围内。有什么建议吗?

阿富汗数据集的示例:

> dput(head(afghan))
structure(list(province = c("Logar", "Logar", "Logar", "Logar", 
"Logar", "Logar"), district = c("Baraki Barak", "Baraki Barak", 
"Baraki Barak", "Baraki Barak", "Baraki Barak", "Baraki Barak"
), village.id = c(80, 80, 80, 80, 80, 80), age = c(26, 49, 60, 
34, 21, 18), educ.years = c(10, 3, 0, 14, 12, 10), employed = c(0, 
1, 1, 1, 1, 1), income = c("2,001-10,000", "2,001-10,000", "2,001-10,000", 
"2,001-10,000", "2,001-10,000", NA), violent.exp.ISAF = c(0, 
0, 1, 0, 0, 0), violent.exp.taliban = c(0, 0, 0, 0, 0, 0), list.group = c("control", 
"control", "control", "ISAF", "ISAF", "ISAF"), list.response = c(0, 
1, 1, 3, 3, 2)), row.names = c(NA, -6L), class = c("tbl_df", 
"tbl", "data.frame"))
马特:

使用dplyr/ tidyversejanitor,您可以执行以下操作:

library(tidyverse)
library(janitor)

afghan %>% 
  group_by(income) %>% 
  tabyl(income, violent.exp.ISAF) %>% 
  adorn_percentages() %>% 
  adorn_pct_formatting()

这显示了您的跨百分比分布income

       income      0     1
 2,001-10,000  80.0% 20.0%
         <NA> 100.0%  0.0%

要创建一个tibble

afghan_tibble <- afghan %>% 
  group_by(income) %>% 
  tabyl(income, violent.exp.ISAF) %>% 
  adorn_percentages() %>% 
  adorn_pct_formatting() %>% 
  as_tibble()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

计算两个值之间的百分比(总和)

如何检查两个值之间的变化(百分比)?

如何计算两个值的范围之间的百分比第三个值是

计算R中每组每个时间序列观测值的百分比

计算JavaScript中两个日期之间的百分比

如何计算第三个值在两个值的范围之间的百分比

如何计算两个Javascript对象之间的匹配百分比?

如何使用Python和OpenCV计算两个图像之间的差异百分比?

计算两个值之间的百分比

Mongodb从不同的集合中获取两个值并计算百分比

如何计算两个数据帧中相应元素之间的百分比变化

在两个不同的列中满足两个条件的观察值的百分比(以r表示)

如何找到包含在单独数组中的两个值的百分比份额?

计算两个特定行之间的百分比变化

如何创建一个表来计算R中两个单独表中的值之间的百分比变化?

从r gtsummary :: tbl_summary中的总观测值计算百分比?

计算插入两个表中的值之间的百分比

R:如何从两个不同的列中获取百分比变化

如何从这两个时间值计算百分比值

计算两个选择计数的百分比

SSRS 2016 - 如何计算组中两个值之间的百分比差异?

Python:计算两个列表之间的一致性百分比?

如何计算两个元组之间的百分比变化

计算两个小时的百分比?

获取R中两个多边形之间的重叠百分比

从 txt/csv 文件 (Python) 中的两个值计算百分比增长

如何计算 Power BI 表中两个测量值之间的百分比差异?

计算两个数字之间的百分比

通过计算 R 中两列值之间的百分比值,在条形图标签上添加百分比符号标签