R 使用变量列名在TIBLE中添加_列
此代码无法在TIBLE中添加列:R 使用变量列名在TIBLE中添加_列,r,dplyr,tibble,R,Dplyr,Tibble,此代码无法在TIBLE中添加列: library(tidyverse) df <- data.frame("Oranges" = 5) mycols <- c("Apples", "Bananas", "Oranges") add_column(df, mycols[[2]] = 7) 但这个代码是有效的: add_column(df, "Bananas" = 7) 为什么? 我不知道“mycols”的价值。这就是为什么我写代码让它成为一个变量。这在dplry
library(tidyverse)
df <- data.frame("Oranges" = 5)
mycols <- c("Apples", "Bananas", "Oranges")
add_column(df, mycols[[2]] = 7)
但这个代码是有效的:
add_column(df, "Bananas" = 7)
为什么?
我不知道“mycols”的价值。这就是为什么我写代码让它成为一个变量。这在dplry中不可能吗?您可以使用以下两个选项之一:
add_column(df, "{mycols[2]}" := 7)
add_column(df, !!(mycols[2]) := 7)
第一种是现在更受欢迎的样式,您可以使用
glue
字符串创建参数名称。否则您可以使用
以插入参数名称。两者都需要:=
允许您使用变量作为参数名(这是调用函数时通常使用的=
无法做到的)。这很有效,谢谢。我懂了!!和:=在帮助文件中,但我不理解文档,我以前从未见过使用它们。你能简单地说明他们做什么吗?@Joe看看这里:@Joe“你在一个充满尖锐的编程问题的环境中,一切都不同”@MrFlick有的文档吗代码>?我在那个链接上看到了:=
,但不是这两个对我来说都是新把戏!谢谢。@Hendy您可能想签出:或获取有关的更多信息代码>。您还可以使用?“!!”
add_column(df, "{mycols[2]}" := 7)
add_column(df, !!(mycols[2]) := 7)