[R] iterative loop with user input?

jim holtman jholtman at gmail.com
Thu Apr 3 23:56:00 CEST 2008


Is this what you want to do:

> x.f <- function(){
+     x <- list()
+     for (i in 1:10){
+         z <- readline(paste("Parameter ", i, ": ", sep=''))
+         # just store the input in a list with the same key
+         x[[z]] <- z
+     }
+     x
+ }
> x.f()
Parameter 1: 12
Parameter 2: 2
Parameter 3: asdf
Parameter 4: 33
Parameter 5: scs
Parameter 6: sdaf2
Parameter 7: 234
Parameter 8: gfd
Parameter 9: 123
Parameter 10: aa
$`12`
[1] "12"

$`2`
[1] "2"

$asdf
[1] "asdf"



On Thu, Apr 3, 2008 at 1:18 PM, Christopher Marcum <cmarcum at uci.edu> wrote:
> Hello R-Users,
>
> I would like to use an iterative loop to collect user input from within a
> function. I'm sure that this would be some combination of "for","break",
> and "next" but have not been able to get the syntax down.
>
> I would like to print some text to the screen at each step in the loop,
> ask the user for input which is saved in an object, and then advance the
> loop.
>
> Here is an example:
>
> #anchor is a file with unique ids
> anchor<-rep(1:30)
> anchor<-paste(anchor,"uid",sep="")
>
> #codelist is where I would like to store user input
> codelist<-NULL
>
> for(i in 1:30) {
> #tell the user which ID is being coded
> print(paste("You are coding unique ID",anchor[i],sep=":   "))
> #Read a line from a text file:
> print(readLines(file="file_with_30_lines.txt",warn=F)[i])
> #Ask the user for input
> codelist[i]<-readline(paste("Select one of the following: \n \t please
> enter 1, 2, or 3: \n Enter Your Response HERE:   ",sep=""))
> }
>
> Ideally, loop should work from inside a function.
>
> Any tips? Thanks in advance for your time and patience.
>
> Best,
> Chris Marcum
> Sociology/Cal(it)^2
> University of California-Irvine
>
> ______________________________________________
> R-help at 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.
>



-- 
Jim Holtman
Cincinnati, OH
+1 513 646 9390

What is the problem you are trying to solve?



More information about the R-help mailing list