在数据表R中创建两个变量(除法运算)

时间:2017-04-01 15:55:14

标签: r data.table

我有这个列的数据表。 (注意:总数不是A + B的总和)。

Date       Total     A      B
12-2015     10       2      3
01-2016     7        1      3
02-2016     15       8      3

我想添加两个变量,一个是A总百分比,B是总百分比。

任何人都可以提供帮助吗?

1 个答案:

答案 0 :(得分:1)

我们可以在.SDcols中指定列并除以'总计'以将其分配给新列

dt[, paste0("Perc_", c("A", "B")) :=  .SD/Total, .SDcols = A:B]
dt
#     Date Total A B    Perc_A    Perc_B
#1: 12-2015    10 2 3 0.2000000 0.3000000
#2: 01-2016     7 1 3 0.1428571 0.4285714
#3: 02-2016    15 8 3 0.5333333 0.2000000