【发布时间】:2014-03-28 13:55:56
【问题描述】:
假设我有一个数据框:
a <- data.frame(a=c("f", 2, 3), b=c("g", 3, 7), c=c("h", 2, 4))
我想从第一行创建列名。我的猜测是:
names(a) <- a[1,]
给出:
names(a)
[1] "3" "3" "3"
我没有完全了解正在发生的事情。任何人都可以解释并帮助我如何正确地做到这一点吗?
【问题讨论】:
-
不知道为什么.. 但你可以将
a[1, ]包裹在unlist()中 -
为什么会有这个data.frame?看起来应该在数据导入/创建期间解决的问题。
-
@Roland 我导入了一个包含因子和数值数据的 csv。因此我不能使用矩阵......如果这是你的意思。
-
如果您导入 CSV,
read.csv应该会识别列标题。 -
是的。但第一行不包含实际的标题,而是元数据-blabla。我必须清理不良的二级数据。