2010-05-16 11 views
1

Je souhaite créer un nouveau jeu de données dans lequel les quatre conditions suivantes sont toutes remplies.R question. Créer un nouveau jeu de données qui remplit les quatre conditions

rowSums(is.na(UNCA[,11:23]))<12 

rowSums(is.na(UNCA[,27:39]))<12 

rowSums(is.na(UNCA[,40:52]))<12 

rowSums(is.na(UNCA[,53:65]))<12 

Merci!

+1

Je ne comprends toujours pas votre intention. S'il vous plaît mettez quelques données factices, afin que nous puissions maîtriser votre problème. Seriez-vous assez aimable pour expliquer ce que 'dataset' implique? Un 'data.frame' ou un' vector'? Ou autre chose? @Shane apparemment obtenu, mais je ne comprends pas quel est le bit ... – aL3xa

+0

Il semble que vous vérifiez l'existence de valeurs qui ne sont pas 'NA'. 'any (! is.na (UNCA [, rows])) peut être plus clair. –

Répondre

9

Ensuite, utilisez l'opérateur &:

UNCA.new <- UNCA[rowSums(is.na(UNCA[,11:23])) < 12 & 
       rowSums(is.na(UNCA[,27:39])) < 12 & 
       rowSums(is.na(UNCA[,40:52])) < 12 & 
       rowSums(is.na(UNCA[,53:65])) < 12, ] 

Un seul & est une fonction vectorisée, alors un double && est unaire (généralement utilisé dans une déclaration if, par exemple).