我有以下data.table内容R
dt <- data.table(gender = c("Male", "Female"), Prop = c(0.49, 0.51))
# gender Prop
# 1: Male 0.49
# 2: Female 0.51
Run Code Online (Sandbox Code Playgroud)
我想计算一Freq = Prop * 1000列,然后仅返回gender和Freq列。如何在一行代码中完成此操作,而无需显式引用该gender列且无需修改dt?
我能做到的最好的办法是:
onsdist$gender[, c(.SD, Freq = Prop * 1000)][, .SD, .SDcols = - "Prop"]
# gender Freq1 Freq2
# 1: Male 490 490
# 2: Female 510 510
Run Code Online (Sandbox Code Playgroud)
但我最终得到了重复的Freq列。
(我不想引用的原因gender是因为它跨data.tables改变了。我不想修改的原因dt …