我想使用以下代码获取数据框的列名:
DF <- data.frame(X=c(1,2), Y=c(3,4))
as.character(sapply(DF, names))
我有以下内容:
"NULL" "NULL"
但我需要以下结果:
"X" "Y"
我怎么能这样做,提前谢谢。
答案 0 :(得分:5)
但是有一个功能可以直接进行。见?colnames
colnames(DF)
[1] "X" "Y"
在这种情况下你也可以
names(DF)
[1] "X" "Y"
无论哪种方式,您都不需要sapply
来提取列名。
如果您命名行names
仍然只提供列名:
rownames(DF)<-list("a","b")
DF
X Y
a 1 3
b 2 4
names(DF)
[1] "X" "Y"
但rownames
函数为您获取行名称:
rownames(DF)
[1] "a" "b"
如果您有一列具有相同列数的数据框,则可能会将sapply
与names
一起使用。
如果您想同时获取数据框的行名和列名,请参阅dimnames
。