通过在R中执行read.table()函数,如下所示,
dat<-read.table("foo.txt",header=T)
dat
我收到以下输出:
Sizes Var1 Var2
1 Size1 2 5
2 Size2 6 4
3 Size3 1 8
但是,第1列是“Sizes”而不是“Var1”。我希望将“Var1”作为第1列开始,同时将“Sizes”作为标签。例如,
Var1 Var2
Size1 2 5
Size2 6 4
Size3 1 8
我怎么能得到它?
我为混淆标题道歉,因为我想不出更好的方式来描述我想要的东西。提前致谢。
答案 0 :(得分:1)
我相信你需要rownames,你可以在 read.table 中使用 row.names ,如下所示:
read.table(header = TRUE, text = "
a b
1 2
3 4
", row.names=1)
如果您放置row.names=2
,则列 b 将被视为rownames,如果它为NULL,则它将同时包含 a 和 b 作为默认rownames为.numbers的列。
来自?read.table
(row.names)的文档:
行名称向量。这可以是给出实际行的向量 名称,或给出表格列的单个数字 包含行名称或给出名称的字符串 包含行名称的表列
如果有标题,第一行包含的字段少于 列数,输入中的第一列用于 行名称。否则,如果缺少row.names,则对行进行编号。
使用row.names = NULL强制进行行编号。缺少或NULL row.names 生成被视为“自动”的行名称
输出如下:
b
1 2
3 4