Dear Yihui, OK -- thanks. That's what I figured, but I hoped that there were something I missed.
Best, John On Sat, 25 Oct 2014 13:53:21 -0500 Yihui Xie <x...@yihui.name> wrote: > RStudio uses a non-interactive R session to compile R Markdown > documents, which means the functions that involve human interaction > will not work. The only way to make these functions work is to use an > interactive R session, which basically means you should not click the > button in RStudio to compile the documents, but should type > rmarkdown::render() in the R console instead. You cannot put the > numbers under scan() and expect they will be read by scan() as if they > were typed by a human, even though they look similar. > > If the function in your case only allows file input for scan(), I > guess the only way is to make a connection, such as textConnection() > as you mentioned. > > Regards, > Yihui > -- > Yihui Xie <xieyi...@gmail.com> > Web: http://yihui.name > > > On Sat, Oct 25, 2014 at 10:58 AM, John Fox <j...@mcmaster.ca> wrote: > > Dear Peter, > > > > Thanks for the suggestion -- it's a bit better for the example I provided > > than my approach of using textConnection() of putting the lines in a file. > > > > I'd still be interested in whether I've missed something like a text-chunk > > option that would allow the R Markdown document to behave like a script > > executed at the console. For example, your approach doesn't work for the > > application where I encountered the problem, which is in a function that > > calls scan() and that passes the file argument to it, but doesn't use the > > text argument. > > > > Best, > > John > > > > On Sat, 25 Oct 2014 17:11:14 +0200 > > peter dalgaard <pda...@gmail.com> wrote: > >> > >> > On 25 Oct 2014, at 16:43 , John Fox <j...@mcmaster.ca> wrote: > >> > > >> > Dear JJ and list members, > >> > > >> > I wonder whether it's possible to get scan() to read in-line data in an > >> > R Markdown document. The following code, for example, works (of course) > >> > when entered in the R console but fails in an R block in an R Markdown > >> > document (using an up-to-date version of RStudio): > >> > > >> > ```{r} > >> > x <- scan() > >> > 1 2 3 > >> > 4 5 6 > >> > > >> > x > >> > ```` > >> > > >> > I'm aware of a couple of work-arounds, such as putting the data in a > >> > file or a character string (as below), but am interested in whether it's > >> > possible to get this to work directly. > >> > > >> > ```{r} > >> > text <- " > >> > 1 2 3 > >> > 4 5 6 > >> > " > >> > (x <- scan(file=textConnection(text))) > >> > ```` > >> > > >> > Any help would be appreciated. > >> > >> This generally isn't easy. You can't source() a file like that either, it > >> only works on std.input, and even there it is tricky it you have tabs in > >> the (pasted) data. Notice that > >> > >> scan(text=" > >> 1 2 3 > >> 4 5 6 > >> ") > >> > >> was designed for the purpose of reading inline data. > >> > >> > >> -- > >> Peter Dalgaard, Professor, > >> Center for Statistics, Copenhagen Business School > >> Solbjerg Plads 3, 2000 Frederiksberg, Denmark > >> Phone: (+45)38153501 > >> Email: pd....@cbs.dk Priv: pda...@gmail.com ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.