3
數目不詳的程序定義的變量的假設我有以下代碼:將數據傳遞給函數在data.table
x = data.table(rowid=1:10, N1=2:11, N2=3:12, N3=4:13)
x[, sum(c(N1, N2, N3)),by=rowid]
現在假設我不知道列名N1,N2,N3提前,他們被保存在向量colnames=c("N1", "N2", "N3")
。如果我知道的變量的數量傳遞給sum()
,我可以在colnames
插上如下:
x[, sum(c(get(colnames[1]),get(colnames[2]),get(colnames[3]))),by=rowid]
現在假設我不知道colnames
長度。有什麼辦法可以重寫上面所以它的作品?像x[, sum(c(sapply(colnames, as.name))),by=rowid]
(注意這個確切的表達式不起作用)。
布拉沃,非常感謝! – msp