编织器无法通过扫描编译块(dec =",")

时间:2012-06-28 16:12:08

标签: r knitr

我正在尝试使用scan(dec =“,”)命令从Excel导入(复制和粘贴)一些数据,逗号为小数点,但编译此块时我遇到knitr问题:

<<>>=
conc<-scan(dec=",")
9,562445749
37,66119516
72,9103195

@

我收到此错误:第22行:意外','

感谢您的帮助

2 个答案:

答案 0 :(得分:2)

在这种情况下,scan()要求您以交互式方式运行它(例如,它等待空行来终止输入),而knitr / {{1以非交互方式运行R代码。通常,您应该避免需要交互的代码;换句话说,您应该保证代码可以在没有人工交互的情况下执行。例如,无论环境如何,它都会自行运行:

Sweave

为了可重复的研究,避免涉及人为干预的代码尤为重要,因为干预意味着结果不能由代码本身决定(取决于每次运行的人工输入)。

答案 1 :(得分:0)

尝试删除最后一行与@之间的空格。这是Sweave的一个问题,所以也许knitr也有问题。由于扫描通常在您输入空行时停止(并且您不想要空行),因此您需要输入要扫描的项目数。

<<>>=
conc<-scan(dec=",", n=3)
9,562445749
37,66119516
72,9103195
@