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