2016-10-25 1 views
1

Похоже, что многострочное исполнение RStudio не работает, когда строки начинаются с запятой. Краткий пример приведен ниже:Многострочное выполнение RStudio не работает, когда строки начинаются с запятой

myData <- data.frame(x = rnorm(1000), lower = sample(letters, 1000,  replace = TRUE)) 
library(dplyr) 

myMutate <- myData %>% 
    mutate(y = log(abs(x)) 
     , caps = toupper(lower)) 

Когда я CTRL + ENTER в строке, которая начинается "myMutate", я получаю следующее сообщение об ошибке:

Error in mutate_(.data, .dots = lazyeval::lazy_dots(...)) : 

аргумент ".data" отсутствует, с по умолчанию

Размещение запятой в предыдущей строке выполняется без каких-либо проблем.

myMutate <- myData %>% 
    mutate(y = log(abs(x)), 
     caps = toupper(lower)) 

Я ничего не вижу в документации RStudio. Хотя я понимаю, что начало строки с запятой может не быть предпочтением каждого, оно должно быть синтаксически правильным.

Неужели кто-то еще сталкивается с этим?

FWIW, я бегу RStudio 1.0.44 на Ubuntu 16.

+0

Итак, я, наконец, фактически протестировал вашу проблему. У меня не было R на компьютере, на котором я написал ответ ранее, и он был немного ошибочным, потому что я думал, что у вас другая проблема. Это моя ошибка. С учетом сказанного ваш код отлично работает на моем компьютере. Версия RStudio, которую вы запускаете, не так важна, как версия R и dplyr, которую вы используете. Возможно, вы захотите опубликовать их, поскольку он отлично работает в моей системе. – Dason

+0

Я смог воспроизвести это; однако проблема, по-видимому, устранена в текущей ежедневной сборке: https://www.rstudio.org/download/daily/desktop/ (проверена с помощью RStudio v1.0.106 на macOS Sierra) –

ответ

1

Я могу подтвердить, что в настоящее время ежедневные сборки из RStudio (версия 1.0.106, Ubuntu Desktop 64-разрядная версия) решает эту проблему. Спасибо, Кевин Уши!