首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数组命名为数据帧->col.names(df) =names(数组)

将数组命名为数据帧->col.names(df) =names(数组)
EN

Stack Overflow用户
提问于 2013-06-28 02:37:09
回答 1查看 384关注 0票数 0

我有一个名为namearray的命名数组,名为

代码语言:javascript
复制
> namearray
evntidABCD evntidWXYZ     
         1          2 
> names(namearray)
[1] "evntidABCD" "evntidWXYZ"

> nrow(namearray)
[1] 2

从这个namearray中,我想构造一个名为f的数据帧,这样namedf的col.names应该与namearray完全相同。并且namedf的行数应该比namearray少1,因为namearray中的第一行是列名。

我尝试了下面的代码,它给出了下面的错误。

代码语言:javascript
复制
>namedf<-data.frame()
>col.names(namedf)<-names(namearray)

Error in `colnames<-`(`*tmp*`, value = c("evntidABCD", "evntidWXYZ")) : 
  'names' attribute [2] must be the same length as the vector [0]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-28 02:49:23

代码语言:javascript
复制
> namearray
evntidABCD evntidWXYZ     
         1          2 

这看起来肯定不像一个“数组”。可能被命名为'vector‘。

如果您创建的数据帧没有列,那么就没有什么可命名的了。这将扩展"null dataframe“

代码语言:javascript
复制
namevec <- c(evntidABCD=1, evntidWXYZ =2)  
namedf<-data.frame()
namedf <- setNames( rbind(namedf,namevec), names(namevec) )

(Justin的建议更好。)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17350783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档