r - R “for loop”错误消息{}

标签 r for-loop error-handling

几天前,当我在R中运行for循环时,它给了我很多与“}”相关的错误。仅当我突出显示整个代码并运行它时,才会发生这种情况。如果我逐行执行它,那么它运行得很好。

我尝试了最基本的循环:

foo <- seq(1, 100, by=2)
foo.squared <- NULL
for (i in 1:50 ) {
foo.squared[i] <- foo[i]^2
}

这是控制台:
> foo <- seq(1, 100, by=2)
"rror: unexpected input in "foo <- seq(1, 100, by=2)
> foo.squared <- NULL
"rror: unexpected input in "foo.squared <- NULL
> for (i in 1:50 ){
"rror: unexpected input in "for (i in 1:50 ){
> foo.squared[i] <- foo[i]^2
"rror: unexpected input in " foo.squared[i] <- foo[i]^2
> }
Error: unexpected '}' in "}"
> 

R session 的详细信息(我在RStudio中运行):
> sessionInfo()
R version 3.0.2 (2013-09-25)
Platform: x86_64-apple-darwin10.8.0 (64-bit)

一直很烦人!!我将不胜感激任何建议!!!
谢谢,
玛利亚

更新:

这是我怀疑会导致此问题的最开始的代码。应该采用名称 vector ,并从中提取第二个元素。
splitnames <- strsplit(as.character(train$Name),"[,.]")
firstelement <- function(x){x[2]}
sapply(splitnames,firstelement)

在我执行它之后,R行为很奇怪。虽然我不确定100%。

最佳答案

我遇到了同样的问题,并且发现它是由RStudio中的错误引起的(代码在R和R-gui中运行良好,但在RStudio中失败。)直到在RStudio的保存文件中损坏某些东西之前,它很难重现。状态,之后的行为是相当一致的。

删除~/.rstudio-desktop对我来说解决了这个问题。

mv ~/.rstudio-desktop ~/rstudio-desktop.old

有关在各种平台上重置RStudio的状态的更多信息here.

关于r - R “for loop”错误消息{},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22133908/

相关文章:

r - 在列中,如何重新编码序列中的数据?

r - R plotly图中带有悬停信息的线段或矩形

python - 使用循环从列表中弹出项目

error-handling - 如何在Kohana 3.3中处理500个错误的自定义错误页面

error-handling - 如何在不使整个反序列化失败的情况下使用 Serde 解析可能无法反序列化的字段?

javascript - 如何为 JSON 创建错误处理函数

r - ddply 到 data.table 中的多个等效列

R:计算矩阵中的行均值

html - 如何在 INPUT 标签上没有 ID 属性的情况下使用 LABEL 标签的 FOR 属性

python - 字符串索引超出范围错误Python for循环