gpt4 book ai didi

r - 更改数据框中多个变量的属性

转载 作者:行者123 更新时间:2023-12-02 01:00:05 25 4
gpt4 key购买 nike

我想更改数据框中变量的标签。我不想使用像 Hmisc 这样的包,而是想简单地使用 tidyverse 中提供的工具。我想我快成功了,但我被困住了。这是一个工作示例:

    library(tidyverse)
DF = data.frame(a=1:2,b=3:4)
attr(DF$a, "label") <- "Old label a"
attr(DF$b, "label") <- "Old label b"

new_labels <- c("First label", "Second label")

replace_labels <- function(df,new_labels){
column_names <- colnames(df)
purrr::map2(column_names, new_labels, ~ (df[[.x]] <-`attr<-`(df[[.x]], "label", .y)))
}

现在将函数应用于数据框

replace_labels(DF, new_labels) 

我得到一个列表而不是数据框,这不是所需的输出并且通过转换将列表转换回数据框似乎不是正确的方法,如果我使用 bind_cols() 所有属性再次丢失。欢迎对功能进行任何改进!

最佳答案

就做DF[] <- replace_labels(DF, new_labels)最后,DF 仍然是一个数据框。

关于r - 更改数据框中多个变量的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51261791/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com