[R-br] Separando nomes e retirando de da dos das

Fátima Lima Paula fatima.lima.paula em gmail.com
Quarta Janeiro 9 11:12:58 BRST 2013


Prezados, há um tempo Walmes me passou um script para separar nomes.
Como vcs podem verificar o nome do meio ficou com um problema (Pedro Maia),
mas eu só ia utilizar o primeiro e último nome, por isso não me importei.
Mas agora preciso de tudo. Assim, eu gostaria de saber se alguém poderia me
ajudar desta forma: acertando o problema que retornou para quem só tem dois
nomes e retirando os "de", "das", "da", etc dos nomes.
Não sei programar e nem imagino como se faz para acrescentar isso no script.
Você poderia me ajudar?

nome=c("Teresa dos Santos","Paulo da Silva","Denis Henrique de
Paula","Pedro dos Santos","Pedro Maia", "Maria do Carmo")
idade=c("80","89","78","78","78","85")
dataint=c("26","20","25","25","25","20")
dados=data.frame(nome,idade,dataint)
dados

Ulitizei seu script assim:
nome=dados$nome
separado=strsplit(as.character(nome),split=" ")
fa=sapply(separado,
          function(i){
            n=length(i)
            c(i[1],paste(i[2:(n-1)],collapse=" "), i[n])
          })
nomenovo=t(fa)
nomenovo=as.data.frame(nomenovo)
dim(nomenovo)
colnames(nomenovo)=c("nome1","nome2","nome3")
dados1=cbind(dados,nomenovo)
head(dados1)

Obrigada
Fátima
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20130109/c8cd7163/attachment.html>


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