我下面的交叉表显示了每个位置落入五分位数的人数
Quintile
Location Fourth Quintile Highest Quintile Lowest Quintile Second Quintile Third Quintile
ACT 47926 56799 31146 28143 30494
GA 117952 90323 106448 115168 125475
GB 216805 204766 190530 195830 212645
GD 17777 17707 10565 11362 13650
GH 19393 14322 19122 19831 21443
GM 403012 363902 385852 384362 396915
GP 186868 256448 174139 165962 161256
GS 432012 468749 399487 400870 411057
NSW 192504 180875 218228 232050 217500
NT 5759 5358 5151 4876 5279
Qld 191812 192972 210659 222899 210492
SA 25105 18248 32495 32662 30916
Tas. 21130 14452 26584 27405 26695
Vic. 111428 74023 131593 132609 126082
WA 37837 60160 45700 43054 37517
我还有另一个数据框,其中包含每个位置的总人数。
Location Total
GS 2112175
NSW 1041157
GM 1934043
Vic 575735
GB 1020576
Qld 1028834
GA 555366
SA 139426
Perth 944673
WA 224268
GH 94111
Tas. 116266
GD 71061
NT 26423
ACT 194508
我想将交叉表除以相应位置的总数,以便交叉表反映每个位置每个五分之一人口的比例/百分比。因此,举例来说,我最终得到的第四个五分位数位置ACT为47926/194508 = 0.24 ...,并对每个位置执行此操作。我如何在R中做到这一点?
您可以按'Location'
合并两个数据帧,然后按Total
划分每一列。
library(dplyr)
df %>%
left_join(total_df, by = 'Location') %>%
mutate_at(vars(`Fourth Quintile`:`Third Quintile`), ~./Total)