2016-09-24 10 views
0

Я хочу, чтобы этот код запрашивал значение x, пока я запускаю весь скрипт, но он не ждет ввода. Хотя он ожидает, что файл будет загружен пользователем в строке 3. При запуске по очереди это работает отлично, и это очевидно. Каков наилучший метод для этого?Как заставить R-скрипт останавливаться, когда ему нужно прочитать строку?

x = readline("how many columns?") 
Data = read.csv(file.choose()) 
columns = matrix(rep(0, dim(Data[1] * x), nrow = dim(Data)[1])) 
Data = cbind(Data, columns) 

ответ

3

, потому что при запуске всего сценария, он не может ждать, чтобы получить значение х. Вы можете поместить скрипт в функцию, а затем вызвать функцию. Он будет работать по строкам.

your_func_name <- function() 
{ 
    #your script 
} 

Всякий раз, когда вы хотите вызвать скрипт:

#just call the function 
your_func_name() 
+0

Плюс один - я не знал, что! – Uwe