gpt4 book ai didi

r - 将变量中的第一个值作为 R 中的变量名

转载 作者:行者123 更新时间:2023-12-02 02:33:54 28 4
gpt4 key购买 nike

在 R 中,我试图获取字符变量的第一个值并用它来重命名同一变量,甚至为另一个新变量分配名称,但我还没有弄清楚如何执行此操作。

示例:

PR <- data.frame("Variable1" = c("Red", "Blue", "Green", "Yellow"), 
"Variable2" = seq(1:4))

PR
Variable1 Variable2
1 Red 1
2 Blue 2
3 Green 3
4 Yellow 4

我知道可以使用“PR %>% rename(Red = Variable1)”,但我希望 R 直接从变量中获取这个名称。结果应该是:

       Red      Variable2
1 Red 1
2 Blue 2
3 Green 3
4 Yellow 4

我尝试使用 dplyr 中的“rename()”函数来实现它,但它不起作用:

 PR <- PR %>% rename(as.name(Variable1)[1] = Variable1)
Error: unexpected '=' in "PR <- PR %>% rename(as.name(Variable1)[1] ="

如何使用 dplyr 执行此操作,甚至在使用“mutate()”命令创建新变量的情况下(例如,如果我想创建一个名称为“Variable1”的第一个值的新变量) )?

最佳答案

这有效吗:

> PR
Variable1 Variable2
1 Red 1
2 Blue 2
3 Green 3
4 Yellow 4
> name <- PR$Variable1[1]
> PR %>% rename(!!sym(name) := Variable1)
Red Variable2
1 Red 1
2 Blue 2
3 Green 3
4 Yellow 4
>

关于r - 将变量中的第一个值作为 R 中的变量名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64624299/

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