[R-br] Diferenças nas saídas

Benilton Carvalho beniltoncarvalho em gmail.com
Quinta Janeiro 10 11:47:44 BRST 2013


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 em 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 em 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.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20130110/54dc241e/attachment.html>


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