我想使用dplyr在远程数据库中粘贴两列。我尝试过这样的事情:
mydb %>%
select(A, B) %>%
mutate(newcol = paste(A, B, collapse = "_"))
但我收到错误Error in paste(A, B, collapse = "_") : object 'A' not found
。什么是dplyr
的粘贴翻译?
我试过了:
> translate_sql(paste(x, y, sep = "_"))
<SQL> PASTE("x", "y", '_' AS "sep")
所以我插入了这个语法来尝试:
mydb %>%
select(A, B) %>%
mutate(newcol = PASTE("A", "B", "_" AS "sep"))
但使用它也不起作用,错误为Named arguments ignored for SQL PASTE
。想法?
答案 0 :(得分:1)
paste()
仅连接由collapse
的值分隔的元素列表。由于此处只有一个值,因此正确的方法是使用sep
。整个列也在paste()
中考虑,因此group_by
用于分隔它们。
mydb %>%
group_by(A, B) %>%
mutate(newcol = paste(A, B, sep = "_"))