Re: [R] list manipulation

From: Thompson, David (MNR) <David.John.Thompson_at_ontario.ca>
Date: Tue, 06 May 2008 14:56:02 -0400

Thanks Mark,

Your suggestion led me to this:

> !is.null(lapply(ls(pattern='bn'), function(y) cat(y, dim(get(y)),
"\t", names(get(y)), "\n")))
bn1993 2885 11 oplt rplt rsiz tree bd ht oaz odst raz rdst spr bn1994 3158 7 oplt tree bd ht spr stat dam

bn1995 734 7     oplt tree bd ht spr stat dam 
bn1996 293 7     oplt tree bd ht spr stat dam 
bn1997 264 7     oplt tree bd ht spr stat dam 
bn1998 768 7     oplt tree bd ht spr stat dam 
bn1999 654 7     oplt tree bd ht dbh stat dam 
bn2003 1407 9 oplt tree bd94 ht94 ht99 ht02 ht03 stat dam [1] TRUE Which is far cleaner and more compact (which was probably what I was _actually_ looking for) than what I had started with.

Thanx, DaveT.
>-----Original Message-----
>From: markleeds_at_verizon.net [mailto:markleeds_at_verizon.net]
>Sent: May 6, 2008 02:47 PM
>To: Thompson, David (MNR)
>Subject: RE: [R] list manipulation
>
> Hi: i would guess that you are sending objects into the lapply that
>dim and names don't work on so you get NULL in those cases.
>you can probably figure out what's happening by doing
>ls(pattern='bn')
>and seeing what gets returned ? There could be some other
>reason but that's my best guess.
>
>if you don't care why and you just want to get rid of them you can do
>
>initialoutput<-lapply( that stuff)
>finaloutput<-initialoutput[!sapply(initialoutput,is.null]
>print(finaloutput)
>
>i'm no R expert by any stretch but, if you want to get better
>at R , the
>best way is to live on this list if possible and watch the
>questions and
>solutions.
>for me, it beats any book out there. good luck and let me know if
>anything above is unclear or doesn't work.
>
>
>
>
>
>On Tue, May 6, 2008 at 2:35 PM, Thompson, David (MNR) wrote:
>
>> Hello,
>>
>> I have a set of one-liners (many thanks to previous responses from
>> this
>> list) that I use to look at newly imported data sets with functions
>> like
>> dim(), names(), str(), etc. within lapply(). Generally,
>these commands
>> work for me but, I am apparently still missing some aspect of list
>> manipulation. I don't understand why I get a set of NULL
>list elements
>> at the end of each output as demonstrated below. How can I generate
>> this
>> (and similar) result(s) without all the trailing NULLs?
>>
>>> lapply(ls(pattern='bn'), function(x) cat(x, dim(get(x)), "\t",
>> names(get(x)), "\n"))
>> bn1993 2885 11 oplt rplt rsiz tree bd ht oaz odst raz rdst spr
>> bn1994 3158 7 oplt tree bd ht spr stat dam bn1995 734 7 oplt
>> tree bd ht spr stat dam bn1996 293 7 oplt tree bd ht spr
>stat dam
>> bn1997 264 7 oplt tree bd ht spr stat dam bn1998 768 7 oplt
>> tree bd ht spr stat dam bn1999 654 7 oplt tree bd ht dbh
>stat dam
>> bn2003 1407 9 oplt tree bd94 ht94 ht99 ht02 ht03 stat dam [[1]]
>> NULL
>>
>> [[2]]
>> NULL
>>
>> [[3]]
>> NULL
>>
>> [[4]]
>> NULL
>>
>> [[5]]
>> NULL
>>
>> [[6]]
>> NULL
>>
>> [[7]]
>> NULL
>>
>> [[8]]
>> NULL
>>
>> Thanx, DaveT.
>> *************************************
>> Silviculture Data Analyst
>> Ontario Forest Research Institute
>> Ontario Ministry of Natural Resources
>> david.john.thompson_at_ontario.ca
>> http://ofri.mnr.gov.on.ca
>>
>> ______________________________________________
>> 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.
>



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. Received on Tue 06 May 2008 - 19:00:41 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Tue 06 May 2008 - 19:30:35 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive