Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带括号的R解析_R - Fatal编程技术网

带括号的R解析

带括号的R解析,r,R,我想解析以下内容,即初始化此函数,其字符串/参数是动态创建的,但解析中的括号错误存在一个问题:意外符号。有办法解决这个问题吗 parse(text="NAFC_page(label=\"quiet_question\", prompt=\"htmltools::HTML('<p>Are you in a quiet environment?</p>'), choices = \"c(Yes, No)\", \", save_answer = FALSE )") 我不知道

我想解析以下内容,即初始化此函数,其字符串/参数是动态创建的,但解析中的括号错误存在一个问题:意外符号。有办法解决这个问题吗

parse(text="NAFC_page(label=\"quiet_question\", prompt=\"htmltools::HTML('<p>Are you in a quiet environment?</p>'), choices = \"c(Yes, No)\", \", save_answer = FALSE )")
我不知道NAFC_页面是什么,但解决这个问题的一种方法是用cat替换解析,然后用代码高亮显示(比如使用SO的lang-r引擎)查看它

catNAFC\u pagelabel=\quiet\u question\,prompt=\htmltools::HTML'您在一个安静的环境中吗?

',choices=\cYes,No\,\,save\u answer=FALSE,\n 由于这产生的输出通常是一行,需要水平滚动,所以我将插入两行新行,以使其在正常的浏览器屏幕中保持可见,但不一定支持移动,对不起。这将产生:

NAFC_pagelabel=安静的问题, prompt=htmltools::HTML'您在一个安静的环境中吗?

', 选项=cYes,否,保存\答案=FALSE 使用SO的代码高亮显示,我首先想到的是将htmltools::HTML标记为字符串。让我们先删除\然后再查看其他内容。再次输入,只是显示输出

NAFC_pagelabel=安静的问题, prompt=htmltools::HTML'您在一个安静的环境中吗?

', 选项=cYes,否,保存\答案=FALSE 好的,现在我看到\cYes,No \被标记为一个字符串,我通常希望它是一个向量cYes,No。再次:

NAFC_pagelabel=安静的问题, prompt=htmltools::HTML'您在一个安静的环境中吗?

', 选项=cYes,否,保存\答案=FALSE 现在我们看到最后一个参数save_answer=和行的其余部分实际上是一个字符串。让我们删除在此处看到的随机引号逗号:

NAFC_pagelabel=安静的问题, prompt=htmltools::HTML'您在一个安静的环境中吗?

', 选项=cYes,否,保存\答案=FALSE 这看起来更好,而且可能解析/计算也更好

从这里,我们应该能够将其放回到您的解析调用中:

parsetext=NAFC\u pagelabel=\quiet\u question\,prompt=htmltools::HTML'您在一个安静的环境中吗?

',choices=c\Yes\,\No\,save\u answer=FALSE 如果语法突出显示部分使用了更改,以下是每个阶段的屏幕截图


1我怀疑htmltools::HTML不应该被引用;2应引用是/否,而不是c;在save_answer=之前有一个随机引号逗号。Try:parsetext=NAFC\u pagelabel=\quiet\u question\,prompt=htmltools::HTML'您在一个安静的环境中吗?

',choices=c\Yes\,\No\,save\u answer=FALSE。提示应该在哪里结束?我同意R,我也不能解析那个字符串。该死的,你是对的r2,我在一个条件下改变了它,但在另一个条件下没有改变,并且找错了地方。谢谢。也许我的答案中的走查没有必要,但它说明了我是如何发现问题的。很高兴有帮助。syntheso,我的回答有帮助吗?有效吗?