[R] Problems with scan
David C. Howell
David.Howell at uvm.edu
Tue Nov 4 21:34:46 CET 2008
I have been having problems with using scan(). I searched the archives
and found someone with the same problem several years ago, but did not
find a solution.
I want to prompt the user for input, scan in that input, and then go on
to use it as a variable.
The simplest version of my program is
cat("enter m","\n")
m <- scan(n = 1, quiet = T)
m
If I enter these lines one at a time, they work perfectly and I get the
following output, which is just want I want..
> cat("enter m","\n")
enter m
> m <- scan(n = 1, quiet = T)
1: 24
> m
[1] 24
>
However if I submit the three lines together, as you would when running
a program, I get
> cat("enter m","\n")
enter m
> m <- scan(n = 1, quiet = T)
1: m
1:
Error in scan(file, what, nmax, sep, dec, quote, skip, nlines,
na.strings, :
scan() expected 'a real', got 'm'
>
In this case the program is reading the line after the scan function as
the input to scan, rather than pausing for my entry. The help archives
suggested putting this as a function "e.g., getn()" but that gives the
same result.
The scan help file doesn't address this and the help archives don't give
me what I need. How do I cause the program to wait for keyboard entry
from me?
I am running version 2.8 on a Windows machine, but the problem goes back
to much earlier versions.
While I'm asking, is there a way to suppress the echoing of lines? I
would like to omit the lines above that begin with ">". I cannot find
"echo" using help.search and can't think of another name to search under.
Thanks,
Dave Howell
--
David C. Howell
PO Box 770059
627 Meadowbrook Circle
Steamboat Springs, CO
80477
More information about the R-help
mailing list