[R] What is going on?

Peter Alspach PAlspach at hortresearch.co.nz
Wed Feb 11 20:42:14 CET 2009


Kia ora Paul

length(l) is 1 - that is, it is a list of with one element.  That list
element is a character vector of length 2.

HTH ....

Peter Alspach 

> -----Original Message-----
> From: r-help-bounces at r-project.org 
> [mailto:r-help-bounces at r-project.org] On Behalf Of Paul Johnston
> Sent: Thursday, 12 February 2009 8:18 a.m.
> To: r-help at r-project.org
> Subject: [R] What is going on?
> 
> Ok, so I'm new to R, but this is driving me crazy.  In this 
> example, I am trying to process each element in a list.
> 
> <code>
> s = "1,2"
> l = strsplit(s, ",", fixed=TRUE)
> print("BEGIN")
> n = length(l)
> i = 1
> while (i <= n) {
>   x = l[[i]]
>   print(paste("x:", class(x), x))
>   print("BEFORE PRINT")
>   print(x)
>   print("AFTER PRINT")
>   i = i + 1
> }
> </code>
> 
> <actual output>
>      [exec] [1] "BEGIN"
>      [exec] [1] "x: character 1" "x: character 2"
>      [exec] [1] "BEFORE PRINT"
>      [exec] [1] "1" "2"
>      [exec] [1] "AFTER PRINT"
>      [exec] [1] "END"
>      [exec] [1] TRUE
> </actual output>
> 
> <expected output>
>      [exec] [1] "BEGIN"
>      [exec] [1] "x: character 1"
>      [exec] [1] "BEFORE PRINT"
>      [exec] [1] "1"
>      [exec] [1] "AFTER PRINT"
>      [exec] [1] "x: character 2"
>      [exec] [1] "BEFORE PRINT"
>      [exec] [1] "2"
>      [exec] [1] "AFTER PRINT"
>      [exec] [1] "END"
>      [exec] [1] TRUE
> </expected output>
> 
> What *basic* concept am I missing here?  The same thing 
> happens with for (x in l) and lapply(l, function(x) 
> print(x)). Please help.
> 
> ______________________________________________
> 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.
> 

The contents of this e-mail are confidential and may be subject to legal privilege.
 If you are not the intended recipient you must not use, disseminate, distribute or
 reproduce all or any part of this e-mail or attachments.  If you have received this
 e-mail in error, please notify the sender and delete all material pertaining to this
 e-mail.  Any opinion or views expressed in this e-mail are those of the individual
 sender and may not represent those of The New Zealand Institute for Plant and
 Food Research Limited.




More information about the R-help mailing list