Foi exatamente o que aconteceu. Acabei de enviar o email. Acho que vou enlouquecer

Em 10 de janeiro de 2013 11:47, Benilton Carvalho <beniltoncarvalho@gmail.com> escreveu:

Veja se o seu banco inclui nomes com apenas 1 palavra (essa seria a condição p sapply não simplificar). b

On 9 Jan 2013 22:21, "Fátima Lima Paula" <fatima.lima.paula@gmail.com> wrote:
Pessoal, desculpem, mas não consigo rodar um script que o Walmes me passou.
No exemplo, fica tudo bem, mas na real dá zebra.
Acho que os objetos estão sendo considerados diferentemente. No exemplo tudo estava com factor. Passei tudo para factor. Nos exemplos os dois bancos eram data.frames. Mas quando faço a função em um a saída vem diferente da do outro.
Por favor, alguém poderia me ajudar.
Exemplo que apresentei

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")
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)

Quando faço head para o fa1 no meu exemplo, retorna assim, que pelo pouco que sei de R, parece uma matriz

> head(fa1)
     [,1]     [,2]    [,3]       [,4]     [,5]    [,6]   
[1,] "Teresa" "Paulo" "Denis"    "Pedro"  "Pedro" "Maria"
[2,] NA       NA      "Henrique" NA       NA      NA     
[3,] "Santos" "Silva" "Paula"    "Santos" "Maia"  "Carmo"

Já quando peço o head do fa do meu bancão, retorna assim e zebra tudo a partir daí.

> head(fa)
[[1]]
[1] "HERALDO" "TAVARES" "SILVA"  

[[2]]
[1] "JUPITER" NA        "SILVA"  

[[3]]
[1] "JACI"   NA       "SANTOS"

[[4]]
[1] "MARCOS" "SILVA"  "FILHO" 

[[5]]
[1] "PAULO" "SILVA" "PORTO"

[[6]]
[1] "INACIO"  "AVELINO" "BELO"   

Alguém tem ideia do que seja?
Obrigada
Fátima

_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.