r - 在 R 中使用粘贴,包括逗号

标签 r paste

我想在 R 中粘贴一个包含逗号的字符串(如下所示):如何转义它?

variable <-"string"

命令 1:

lm(paste(variable," ~ ., DATA",sep=""))

错误信息 1:

Error in parse(text = x) : <text>:1:9: unexpected ','

命令 2:

lm(paste(variable," ~ .\, DATA",sep=""))

错误信息 2:

Error: '\,' is an unrecognized escape in character string starting "" ~ .\,"

期望的输出:

lm(string ~ ., DATA)

我明白为什么会收到错误消息,但我不知道如何使用粘贴打印文字逗号。

编辑:同意 paste 单独工作正常,在 lm() 内部,这会导致问题吗?

最佳答案

您的问题不在粘贴中。它在 lm 中。逗号不应该出现在公式中,因此当它将您粘贴的字符串(可以正常工作,将其从 lm 中拉出,您会看到这一点)转换为公式时,它会向您吐槽。

此外,考虑到您预期会发生的情况,这不是正确的处理方式。如果您想在这种情况下像这样进行元编程,您应该将整个命令(即 lm(string ~ ., DATA))构造为字符串,然后使用 eval解析。综上所述,这是一个绝对糟糕的编程范式。只需正常构造函数调用或至少使用 do.call

关于r - 在 R 中使用粘贴,包括逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31253966/

相关文章:

r - 编写一个函数来过滤和汇总数据到比例表中

emacs - 向 ESS/R 用户询问有关 .emacs 文件中 elisp 代码的建议

r - 如何将由 "+"分隔的变量名列表传递给函数

vim - vi:粘贴到文件顶部

r - 将不同长度的嵌套列表高效转换为 data.frame(使用基数 R)

r - 如何增加ggplot2条形图中条形之间的间距?

r - 将列值粘贴到另一列

vba - Excel VBA 在空行上复制和粘贴(不使用复制+粘贴功能)

linux - 如何从多个文件中提取一列,并将这些列粘贴到一个文件中?

database - 如何使用 R DBI 传递 data.frame 以进行更新