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_”但必须有一个更明智的方法。