Message-ID: <Pine.A41.4.61b.0503291606590.222566@homer04.u.washington.edu>
Date: 2005-03-30T00:13:18Z
From: Thomas Lumley
Subject: From FAQ 7.21 to a command like apply(sapply(list(f1, f2, f3), is.na), 2, sum)
In-Reply-To: <3.0.6.32.20050330004012.007944d0@pop.gmx.net>
On Wed, 30 Mar 2005, Heinz Tuechler wrote:
> Dear all,
>
> Last December there was a thread regarding the famous FAQ 7.21 "How can I
> turn a string into a variable?" and asking what people want to do with
> these strings.
> My, certainly trivial application would be as follows:
> Assume I have a data.frame containing besides others also the columns f1,
> f2, ..., fn and I want to create a command like:
> apply(sapply(list(f1,f2,f3),is.na),2,sum)
> or
> summary(cbind(f1,f2,f3))
>
> Can I start from paste('f',1:3,sep='') to arrive at the abovementioned
> command?
No parse,as.name or other complications needed. It's all just indexing.
Suppose your data frame is called dd
fs<-paste('f',1:3,sep='')
apply(sapply(dd[,fs],is.na),2,sum)
summary(dd[,fs])
-thomas