1
我想通過名字來傳遞變量到data.table X如下:按名稱傳遞變量分配到右手邊:=在data.table
myfunc <- function(varname){
X[, newVar:= varname]
}
myfunc("oldVar")
我應該如何去關於它?我試過quote()
與eval()
,但它沒有奏效。
我想通過名字來傳遞變量到data.table X如下:按名稱傳遞變量分配到右手邊:=在data.table
myfunc <- function(varname){
X[, newVar:= varname]
}
myfunc("oldVar")
我應該如何去關於它?我試過quote()
與eval()
,但它沒有奏效。
查找列作爲一個向量,並利用它來進行分配:
myfunc <- function(varname){
X[, newVar := X[[varname]]]
}
X <- data.table(oldVar=1:4, b=5:8)
> myfunc("oldVar")
oldVar b newVar
1: 1 5 1
2: 2 6 2
3: 3 7 3
4: 4 8 4
非常感謝,馬修。它像一個魅力:) – AdamNYC
你真的應該通過[data.table FAQ]以自己的方式(HTTP://datatable.r-forge 1,1'- project.org /數據表-faq.pdf)。這是FAQ 1.5 - 1.6。 –
'varname'是'.GlobalEnv'中某個對象的名字嗎? – GSee
你只是想重命名列? – mnel