data.frame rownames vs data.table键

时间:2017-08-04 13:27:18

标签: r dataframe data.table rowname

我在R中使用数据帧已有一段时间了。我觉得我能够很好地处理他们能做什么和不能做什么。但是,由于查找效率更高,我最近对数据表感兴趣。但是,我在大门外遇到了一些问题。

通常使用数据框我会分配rownames并在以后使用它们进行索引。这样做的好处是rownames不必是数据中的列。因此,假设我在以下格式的csv文件中读取:

Name, val1, val2, …, valN

其中Name是(唯一)字符串,val是数字。然后我将设置rownames(x) = x[,1]并删除第一列。现在我有一个完全数字的数据框,我可以添加,减去等等。我不必担心在字符串字段上进行数学运算。现在我可以做apply(x, 1, mean)之类的事情而没有任何问题。

但是,似乎在数据表世界中我会做这样的事情:

DT = as.data.table(x); setkey(DT, Name)

但是现在角色列仍然存在。所以假设我想要取每行的平均值。我现在必须经常告诉它只对列2:ncol采取行动吗?

我认为有一种解决方法,但我的谷歌搜索已经空了。

0 个答案:

没有答案