3
更改data.table的colnames的最簡單方法是如何保留原始名稱,但前面(或後面)有一個或幾個其他字母。 例如我運行下面的代碼向data.table中的setname添加字母R
tmp <- DT[, lapply(.SD, mean, na.rm=T), by = .(NACE2), .SDcols=cols]
tmp1 <- DT[, lapply(.SD, sum, na.rm=T), by = .(NACE2), .SDcols=cols]
sna <- function(x) { sum(!is.na(x))}
tmp2 <- DT[, lapply(.SD, sna), by = .(NACE2), .SDcols=cols]
這導致多個data.tables它們都具有在DT
原來的名字,通過.SDcols
有65分選定列確定的相同的名字,我想改變colnames在這樣一種方式,名稱分別由
- M_爲
tmp
- S_之前爲
tmp1
01合併
- na_爲
tmp2
tmp, tmp1, tmp2
在一起之前
有直接在lapply
功能或比避免通過setnames(tmp, ...)
重新輸入65名更好的方式這樣做的呢? 我知道有可能創建一個姓氏的向量,然後將該向量與另一個由例如「m_」但必須有一個更明智的方法。