Simpler would be:
rowSums(is.na(df))
On 17/01/2011 10:13, Ivan Calandra wrote:
Hi,
I hope you made a mistake in c(NA,"TWO","BOTH","ONE") because if not, I
have no idea what you're looking for...
But would that do?
df <- data.frame(A=c(1,2,NA,NA),B=c(1,NA,NA,4))
apply(df,1, FUN=function(x) length(x[is.na(x)]))
[1] 0 1 2 1
There might be better ways to do it, but it works
HTH,
Ivan
Le 1/17/2011 11:01, Johannes Graumann a écrit :
Hi,
What is an efficient way to take this DF
data.frame(A=c(1,2,NA,NA),B=c(1,NA,NA,4))
and get
c(NA,"TWO","BOTH","ONE")
as the result, where NA corresponds to a row without "NA"s, TWO
indicates NA
in the second and ONE in the first column.
Thanks for any pointers.
Joh
______________________________________________
[email protected] 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.
--
Patrick Burns
[email protected]
twitter: @portfolioprobe
http://www.portfolioprobe.com/blog
http://www.burns-stat.com
(home of 'Some hints for the R beginner'
and 'The R Inferno')
______________________________________________
[email protected] 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.