3
考慮下面的代碼:如何在`:=`下的data.table中分配動態列名?
library(data.table)
carsDT <- data.table(cars)
carsDT[speed < 15, `:=`(paste0("col", 1)=1 paste0("col", 2)=2)]
此代碼提供了錯誤:
Error: unexpected '=' in "carsDT[speed < 15, `:=`(paste0("col", 1)="
有沒有什麼辦法,這裏面:=
,我可以使用動態列名?我知道我可以這樣做:
carsDT[speed < 15, (paste0("col", 1)) := 1]
carsDT[speed < 15, (paste0("col", 2)) := 2]
此解決方案將涉及許多行代碼(要分配的列數在100s)。如果我可以在單一的:=
下完成所有的作業,那將很方便。
任何幫助表示讚賞。