1

我在 R 中使用数据框已经有一段时间了。我觉得我对他们能做什么和不能做什么有很好的把握。但是,由于查找效率更高,我最近对数据表产生了兴趣。但是,我一开始就遇到了一些问题。

通常,对于数据框,我将分配行名并稍后将其用于索引。这样做的好处是行名不必是数据中的列。所以假设我读入了一个格式为 csv 的文件:

Name, val1, val2, …, valN

其中 Name 是一个(唯一的)字符串,vals 是数字。然后我将设置rownames(x) = x[,1]和删除第一列。现在我有一个完全数字的数据框,我可以添加、减去等。我不必担心对字符串字段进行数学运算。现在我可以毫无问题地做类似apply(x, 1, mean)的事情了。

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

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

但是现在字符栏仍然存在。所以假设我想取每一行的平均值。我现在是否必须不断告诉它只作用于列2:ncol

我认为有办法解决这个问题,但我的谷歌搜索是空的。

4

0 回答 0