Find a percentage based on multiple columns of criteria in R

后端 未结 3 427
眼角桃花
眼角桃花 2021-01-22 08:13

I have multiple columns and I would like to find the percentage of a one column in the other columns are the same. For example;

ST  cd  variable
1   1   23432
1         


        
3条回答
  •  野的像风
    2021-01-22 08:51

    Using dplyr:

    require(dplyr)
    
    df %>% group_by(ST, cd) %>% mutate(percentage = variable/sum(variable))
    
    #  ST cd variable percentage
    #1  1  1    23432 0.90902743
    #2  1  1     2345 0.09097257
    #3  1  2   908890 0.25227624
    #4  1  2   350435 0.09726856
    #5  1  2  2343432 0.65045519
    #6  2  1     9999 0.29909366
    #7  2  1    23432 0.70090634
    

    You can modify this if you want:

    dd %>% group_by(ST, cd) %>% mutate(percentage = round(variable/sum(variable)*100, 2))
    
    #  ST cd variable percentage
    #1  1  1    23432      90.90
    #2  1  1     2345       9.10
    #3  1  2   908890      25.23
    #4  1  2   350435       9.73
    #5  1  2  2343432      65.05
    #6  2  1     9999      29.91
    #7  2  1    23432      70.09
    

提交回复
热议问题