【问题标题】:Collecting a colname for a list为列表收集 colname
【发布时间】:2020-08-17 23:44:08
【问题描述】:

我正在尝试使用列名填充列表。我对一列进行了测试,结果是空的,即使它应该已经填充了那一列名称。当为该 1 列输入 colnames 时,它出现 NULL。我做了以下列名:

colnames(dr[,2:5])
colnames(dr[,2:3])
colnames(dr[,2])

得到以下结果:

[1] "drlc_q1"   "drlc_q2_1" "drlc_q2_2" "drlc_q2_3"
[1] "drlc_q1"   "drlc_q2_1" 
NULL

谁能解释为什么只有一列出现为 NULL 使我的列表为空?我最终将运行多个列,但仍有一些问题。

我将我的空列表初始化为: y

【问题讨论】:

    标签: r list


    【解决方案1】:

    问题应包括示例输入数据(有关发布问题的说明,请参见 标签页的顶部),但假设 dr 是数据框 dr[, 2] 将第二列作为向量返回。它不再是数据框,因此没有列名。您可以使用dr[, 2, drop = FALSE] 确保它保持为data.frame 或使用names(dr)[2] 避免整个问题。

    以内置的 6x2 BOD 数据框为例:

    BOD[, 2]  # produces vector, not data frame
    ## [1]  8.3 10.3 19.0 16.0 15.6 19.8
    
    names(BOD[, 2, drop = FALSE])
    ## [1] "demand"
    
    names(BOD)[2]
    ## [1] "demand"
    

    【讨论】:

    • 谢谢你。我的测试正在运行,我会阅读更多内容,但这应该可以。谢谢!!
    猜你喜欢
    • 2015-07-26
    • 1970-01-01
    • 1970-01-01
    • 2018-12-09
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多