【问题标题】:COLNAMES function not reading correct labelsCOLNAMES 函数未读取正确的标签
【发布时间】:2015-05-22 21:24:23
【问题描述】:

我的应用程序将数据从 excel 读取到数据框中。然后它转置数据(感谢 excel),然后构建一个数据框。

我想将读取过程中分配的列名替换为第一行的内容。

这是我尝试替换列名的方法。这似乎是执行此操作的标准方法。但是,结果如下:

>require(XLConnect)
>wb <- loadWorkbook("test.xlsx")
>df1 <- readWorksheet(wb, sheet="df1")
>tdf1 <- t(df1)
>df1<- data.frame(tdf1)
>tdf1 <- NULL
>colnames(df1)
[1] "X1" "X2" "X3" "X4" "X5"
> df1[1,]
   X1  X2    X3   X4   X5
LABEL ONE TWO THREE FOUR FIVE
> colnames(df1) = df1[1,]
> colnames(df1)
[1] "6" "5" "5" "6" "4"

我希望 colnames(df1) 是

 LABEL ONE TWO THREE FOUR FIVE

我做错了什么?

谢谢, 马特

这是数据

LABEL   CLASS   LOW HIGH    Baseline    MIN MAX SOURCE1 SOURCE2
ONE     TYPE1   10  20                  NA  NA      5   6
TWO     TYPE1   90  100                 NA  NA      7   
THREE   TYPE2   0   0                   NA  NA      8   
FOUR    TYPE3   80  130 120             NA  NA      9   10
FIVE    TYPE3   95  110                 NA  NA      11  

【问题讨论】:

  • 你能告诉我们excel数据是什么样子的吗?
  • 我已经添加了数据。谢谢!
  • 在excel文件中,列名是不是只有一行(或者合并为一行)?
  • 每一列名都​​在第一行 a1 = LABEL, a2 = CLASS, a3=LOW etc.

标签: r excel


【解决方案1】:

我认为您正在为每一行获取因子的枚举版本。

这会起作用...

unname(unlist(df1[1,]))

【讨论】:

    猜你喜欢
    • 2022-01-23
    • 2016-12-13
    • 2012-08-10
    • 1970-01-01
    • 2020-10-22
    • 2014-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多