【问题标题】:Is there a way to get all the label attributes of columns in R有没有办法获取R中列的所有标签属性
【发布时间】:2020-10-29 00:07:38
【问题描述】:

我使用qualtRics 包中的read_survey() 命令创建了一个数据框。数据框具有具有名称的变量(列)(例如“Q1”),但它们也具有标签属性(例如“您的年龄是多少?”)。有没有办法访问所有标签并将它们放在一个很好的概览中,如列表或单独的数据框?

我已经能够使用以下方法单独访问每个标签:

attributes(df$Q1)

结果如下:

$label
                                                         Q1 
" What is your age?"

我知道我应该提供一个可重现的数据框来澄清我的问题,但是我不知道如何创建这些标签属性。

我想要的结果数据框看起来像这样:

Column 1           Column 2
Q1                 "What is your age?"
Q2                 "What is your name?"
etc                etc (i.e.The rest of the labels)

或者用一个包含所有标签的列表来代替数据框。

【问题讨论】:

    标签: r attributes


    【解决方案1】:

    这能回答你的问题吗?

    Q1 = runif(5)
    Q2 = runif(5)
    
    attributes(Q1)$label <- c("What is your age?")
    attributes(Q2)$label <- c("What is your name?")
    
    
    df <- data.frame(Q1, Q2)
    
    purrr::map_df(df, ~attributes(.x)) %>%
      bind_cols(names = names(df), .)
    

    【讨论】:

    • 感谢您的快速回复,但我没有创建带有标签的数据框。我想要一个已经存在的所有标签的列表。我已经编辑了我的问题,希望它变得更清楚。结果将是一个包含两列的数据框。一个包含所有问题名称和一个包含所有问题标签。
    • 编辑了答案。它回答了你的问题吗?
    • 很遗憾不是,因为attributes(df)$label 等于 NULL。可能是因为 label 属性不是 df 的一部分,而是存在于 df 中的每个单独变量中。
    • 更新了答案,使其使用列中的属性。
    • 几乎,多亏您的帮助,我才弄明白了。只是一些小的tweeks。 map_chr(df, ~attr(.x, "label")) %&gt;% bind_cols(names = names(df), question = .)
    猜你喜欢
    • 2010-11-23
    • 2021-05-17
    • 1970-01-01
    • 2015-08-20
    • 1970-01-01
    • 1970-01-01
    • 2012-01-31
    • 2016-08-20
    • 1970-01-01
    相关资源
    最近更新 更多