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
[email protected]
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.

Responder a