[R-br] Excluir nomes sem sobrenome

Fátima Lima Paula fatima.lima.paula em gmail.com
Quinta Janeiro 10 12:02:54 BRST 2013


Descobri que não consigo separar os nomes no bancão poque têm vários nomes
que não têm sobrenome nenhum.
Só que são muitos.
Existe uma forma de excluir essas linhas?
Aí vai o exemplo com a Maria. Não roda.
Quando peço um summary no "separado", retorna que Maria tem length=1. Seria
retirar todos que têm length=1.

nome=c("Teresa dos Santos","Paulo da Silva","Denis Henrique de
Paula","Pedro dos Santos","Pedro Maia", "Maria")
idade=c("80","89","78","78","78","85")
dataint=c("26","20","25","25","25","20")
dados1=data.frame(nome,idade,dataint)
dados1
str(dados1)
nome1=dados1$nome
# remover da,das,do,dos,de
nome1=gsub(" d(a|e|o)s? ", " ", nome1)
separado1=strsplit(as.character(nome1), split=" ")
head(separado1)
fa1=sapply(separado1,
          function(i){
            n=length(i)
            if(n>2) return(c(i[1], paste(i[2:(n-1)],collapse=" "), i[n]))
            if(n==2) return(c(i[1], NA, i[n]))
          })
nomenovo1=t(fa1)
nomenovo1=as.data.frame(nomenovo1)
dim(nomenovo1)
colnames(nomenovo1)=c("nome1","nome2","nome3")
dados2=cbind(dados1,nomenovo1)
head(dados2)
Por favor, alguém pode ajudar?
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20130110/c8a9e144/attachment.html>


Mais detalhes sobre a lista de discussão R-br