[R-br] Transformação de dados no dataframe

fabrizzioconde em gmail.com fabrizzioconde em gmail.com
Quarta Outubro 24 12:56:06 BRST 2012


Caro Augusto,

Muito obrigado pelas dicas de codificação, resolveram muito bem o problema,
mas ainda estou com problema na montagem da tabela final deste e-mail, pois
o comando table que sugeriu  conta o número de casos de AA, BB e AB na
tabela final e o que necessito é posicionar de maneira diferente o dado e
não contar o número de vezes que o mesmo aparece nos fatores.

AA11AB2
AA21AA0
AA31BB1
AA41BB1
AA12AA0
AA22AB2
AA32AB2
AA42AA0
AA13BB1
AA23BB1
AA33AA0
AA43AA0
AA14BB1
AA24AB2
AA34AA1
AA44AB2

 
Desta forma, note que o elemento (1,5) na tabela acima foi colocado na
posição (1,1) da tabela abaixo. O elemento (5,5) foi colocado na posição (2
1). O elemento (9,5) foi inserido na posição (3,1) e o elemento (13,5) está
na posição (4,1). Assim, consigo capturar a variável AA1 de cada indivíduo
(1, 2, 3 e 4). Da mesma forma, o elemento (2,5) foi colocado na posição (1
2), o elemento (6,5) foi inserido na posição (2,2) e assim sucessivamente.

 AA1AA2AA3AA4
12011
20220
31100
41212


Não consigo fazer esse redimensionamento da tabela antiga para a nova.

Desde já agradeço imensamente sua ajuda.

Abraços,
Fabrízzio

 
 
 
 
-------Original Message-------
 
From: r-br-request em listas.c3sl.ufpr.br
Date: 24/10/2012 12:00:14
To: r-br em listas.c3sl.ufpr.br
Subject: Digest R-br, volume 20, assunto 30
 
Enviar submissões para a lista de discussão R-br para
  r-br em listas.c3sl.ufpr.br
 
Para se cadastrar ou descadastrar via WWW, visite o endereço
  https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
ou, via email, envie uma mensagem com a palavra 'help' no assunto ou
corpo da mensagem para
  r-br-request em listas.c3sl.ufpr.br
 
Você poderá entrar em contato com a pessoa que gerencia a lista pelo
endereço
  r-br-owner em listas.c3sl.ufpr.br
 
Quando responder, por favor edite sua linha Assunto assim ela será
mais específica que "Re: Contents of R-br digest..."
 
 
Tópicos de Hoje:
 
   1. Re: Transformação de dados no dataframe (Augusto Ribas)
 
 
----------------------------------------------------------------------
 
Message: 1
Date: Wed, 24 Oct 2012 09:50:12 -0300
From: Augusto Ribas <ribas.aca em gmail.com>
To: r-br em listas.c3sl.ufpr.br
Subject: Re: [R-br] Transformação de dados no dataframe
Message-ID:
  <CACMkfRyM6o+=mvtJ7GuQXn2xMiNYgGdo1Za0m0erZ6aw6Xc09g em mail.gmail.com>
Content-Type: text/plain; charset="windows-1252"
 
Vamos supor um exemplo de dados:
 
#dados de exemplo
dados<-data.frame(col1=round(runif(20,1,4)),col2=sample(c("A","B"),20
replace=T),col3=sample(c("A","B"),20,replace=T))
dados
 
 
#primeiro com o comando paste, vamos juntar a coluna 2 com a 3, criando os
AA AB e BB
dados$col4<-factor(paste(dados$col2,dados$col3,sep=""))
 
#Depois como os walmes nos ensinou aqui na lista, a gente usa o match()
#para recodificar nos valores que queremos, no caso como vc falou
 
levels(dados$col4)
recod<-c(0,1,1,2)
dados$col5<-recod[match(dados$col4,levels(dados$col4))]
dados
 
 
#agora que vc te todos os ingredientes, é so usar o comando table() para
fazer essa tabela
#eu fiz um exemplo de tabela com a coluna 5 e a coluna 5, mas pelo que vi
vc quer a coluna
#5 e os nomes das linhas, rownames(sua planilha), entao use os nomes da
linha na tabela
table(dados$col5,dados$col4)
 
Espero que ajude.
Abraços
 
Em 24 de outubro de 2012 09:16, fabrizzioconde em gmail.com <
fabrizzioconde em gmail.com> escreveu:
 
>    Bom dia,
>
> Existe algum script que faça o seguinte:
>
> 1) Cria uma quinta coluna na matriz abaixo baseada na terceira e na quarta
> coluna DA seguinte forma: AA = 0, BB = 1 e AB = 2.
>
>    AA1 1 A B AA2 1 A A AA3 1 B B AA4 1 B B AA1 2 A A AA2 2 A B AA3 2 A B
> AA4 2 A A AA1 3 B B AA2 3 B B AA3 3 A A AA4 3 A A AA1 4 B B AA2 4 A B AA3
> 4 A A AA4 4 A B
>
> Assim, a matriz se transformaria em:
>
>    AA1 1 A B 2 AA2 1 A A 0 AA3 1 B B 1 AA4 1 B B 1 AA1 2 A A 0 AA2 2 A B 2
> AA3 2 A B 2 AA4 2 A A 0 AA1 3 B B 1 AA2 3 B B 1 AA3 3 A A 0 AA4 3 A A 0
> AA1 4 B B 1 AA2 4 A B 2 AA3 4 A A 1 AA4 4 A B 2
>
> 2) Após esse passo, tenho que eliminar as colunas 3 e 4 DA matriz acima
> (talvez em um novo dataframe) e redimensioná-la para o seguinte formato:
>
>      AA1 AA2 AA3 AA4 1 2 0 1 1 2 0 2 2 0 3 1 1 0 0 4 1 2 1 2
>
> Ao final, preciso que cada coluna DA matriz acima seja encarada pelo R
> como uma variável (AA1, AA2, AA3, AA4), pois irei aplicar o pacote de
> regressão logística penalizada stepPlr e considerar essas variáveis
> preditoras.
>
> Muito obrigado.
> Fabrízzio
>    [image: FREE Christmas Animations for your email ? by IncrediMail!
> Click Here!]<http://www.incredimail.com/?id=620188&did=10500&ppd=2747
201111071523,9,[TypeID],[IM_UPN2]&rui=139771782&sd=20121024>
>
> _______________________________________________
> 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.
>
 
 
 
--
Grato
Augusto C. A. Ribas
 
Site Pessoal: http://augustoribas.heliohost.org
Lattes: http://lattes.cnpq.br/7355685961127056
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr
br/pipermail/r-br/attachments/20121024/96f8c562/attachment-0001.html>
-------------- Próxima Parte ----------
Um anexo não-texto foi limpo...
Nome: xmas_girl_en.gif
Tipo: image/gif
Tamanho: 61041 bytes
Descrição: não disponível
URL: <http://listas.inf.ufpr
br/pipermail/r-br/attachments/20121024/96f8c562/attachment-0001.gif>
 
------------------------------
 
_______________________________________________
R-br mailing list
R-br em listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
 
 
Fim da Digest R-br, volume 20, assunto 30
*****************************************
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20121024/14578dbf/attachment.html>
-------------- Próxima Parte ----------
Um anexo não-texto foi limpo...
Nome: xmas_girl_en.gif
Tipo: image/gif
Tamanho: 61041 bytes
Descrição: não disponível
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20121024/14578dbf/attachment.gif>


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