55

我有一个.txt包含行名的文件。但是,R 将行名称设置为第一列。

4

2 回答 2

85

如果您使用过read.table()(或其中一种,例如read.csv()),那么简单的解决方法是将调用更改为:

read.table(file = "foo.txt", row.names = 1, ....)

....您需要/使用的其他参数在哪里。该row.names参数采用要从中获取行名的数据文件的列号。它不必是第一列。有关?read.table详细信息/信息,请参阅。

如果您已经在 R 中有数据并且懒得重新读取它,或者它来自另一条路线,只需设置rownames属性并从对象中删除第一个变量(假设obj是您的对象)

rownames(obj) <- obj[, 1]  ## set rownames
obj <- obj[, -1]           ## remove the first variable
于 2012-11-07T14:36:06.323 回答
7

?read.table。基本上,当您使用 时read.table,您指定一个表示列的数字:

##Row names in the first column
read.table(filname.txt, row.names=1)
于 2012-11-07T14:33:50.290 回答