[R-br] Dúvida básica

Rodrigo Pereira doforodrigo em gmail.com
Terça Maio 17 15:13:46 BRT 2011


Olá, Henrique.

Já consegui. Muito obrigado pela ajuda! Esta pode ser uma outra alternativa,
vou tentar depois para ver o que fica melhor, mas para o momento o unstack()
ajudou muito.

Abraço!

Rodrigo Pereira
(31)9326 3139


2011/5/17 Henrique Dallazuanna <wwwhsd em gmail.com>

> Veja se é o que vc quer:
>
> x <- structure(list(resposta = c("0", "2.96", "10.28", "12.42", "15.6",
> "14.23", "10.55", "8", "6.12", "3.24", "2.82", "1.18", "0.42",
> "0", "0", "1.2", "0", "4.01", "19.82", "17.83", "12.74", "7.37",
> "7.73", "4.7", "4.11", "3.11", "3.19", "2.25", "0.44", "0.16",
> "0", "2.36"), fator = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L,
> 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
> 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("R", "T"), class =
> "factor"),
>    sujeito = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L,
>    2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L,
>    2L, 2L, 2L, 2L, 2L)), .Names = c("resposta", "fator", "sujeito"
> ), row.names = c("1", "2", "3", "4", "5", "6", "7", "8", "9",
> "10", "11", "12", "13", "14", "15", "31", "16", "17", "18", "19",
> "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30",
> "32"), class = "data.frame")
>
>
> reshape(cbind(x, id = rep(1:8, times = 4)), direction = 'wide',
> timevar = 'fator')
>
>
>
>
> 2011/5/17 Rodrigo Pereira <doforodrigo em gmail.com>:
> > Henrique,
> > Esta opção eu tentei e deu certo. Porém, trata-se de um banco de dados
> longo
> > com vários sujeitos. Sendo assim, ele vai empilhar todos os valores de R
> um
> > embaixo do outro, assim como para T. Assim, se eu tiver 60 valores será
> > fornecida duas colunas, sendo uma de R com 30 valores e uma de T com 30
> > valores, que na verdade, deveriam ser 4 colunas, snedo 2 com 15 valores
> cada
> > para R e duas com 15 valores cada para T, já que são de 4 indivíduos.
> (Não
> > sei se expliquei bem...)
> > Minha intenção é tentar automatizar de forma que não seja necessário
> fazer a
> > divisão manualmente ou pela função matrix().
> > Estou tentando outras opções como a do Rodrigo (que é a sua também!) e
> > sempre aparece a mensagem
> > Aviso em Ops.factor(factor(medidas.formulation),
> (factor(medidas.subject)))
> > :
> >   + not meaningful for factors
> > logical(0)
> > quando utilizo dois fatores.
> > Obrigado!
> > Rodrigo Pereira
> >
> >
> > 2011/5/17 Henrique Dallazuanna <wwwhsd em gmail.com>
> >>
> >> Rodrigo,
> >>
> >> Para mim está é a mesma saida do unstack(x, resposta ~ fator):
> >>
> >> > unstack(x, resposta ~ fator)
> >>       R     T
> >> 1   0.00  0.00
> >> 2   2.96  4.01
> >> 3  10.28 19.82
> >> 4  12.42 17.83
> >> 5  15.60 12.74
> >> 6  14.23  7.37
> >> 7  10.55  7.73
> >> 8   8.00  4.70
> >> 9   6.12  4.11
> >> 10  3.24  3.11
> >> 11  2.82  3.19
> >> 12  1.18  2.25
> >> 13  0.42  0.44
> >> 14  0.00  0.16
> >> 15  0.00  0.00
> >>
> >> Continuo sem entender o que vc precisa...
> >>
> >> 2011/5/17 Rodrigo Pereira <doforodrigo em gmail.com>:
> >> > Henrique,
> >> > Observando o primeiro exemplo que dei você verá que há três colunas:
> >> > resposta, fator, sujeito. Este banco está empilhado (formato longo) e
> >> > gostaria de passar para o formato largo, da seguinte forma:
> >> > R1            T2
> >> > 0.00          0,00
> >> > 2.96          4.01
> >> > 10,28        19,82
> >> > ...              ...
> >> > Sendo que R1 e T2 é a combinação do fator e do sujeito. Um pouco
> >> > complicado...
> >> > Se puder me ajudar agradeceria muito!
> >> > Abraço!
> >> > Rodrigo Pereira
> >> >
> >> >
> >> > 2011/5/17 Henrique Dallazuanna <wwwhsd em gmail.com>
> >> >>
> >> >> Rodrigo,
> >> >>
> >> >> Mas o que vc deseja fazer?
> >> >>
> >> >> 2011/5/17 Rodrigo Pereira <doforodrigo em gmail.com>:
> >> >> > Olá, Paulo.
> >> >> > Tentei fazer isso algumas vezes e aparece uma mensagem dizendo o
> >> >> > seguinte:
> >> >> > testeR<-unstack(dados,resposta~(factor(fator1))+(factor(fator2)))
> >> >> > Aviso em Ops.factor((factor(fator1)), (factor(fator2))) :
> >> >> >   + not meaningful for factors
> >> >> > Já tentei modificar algumas coisas, mas ainda não consegui
> contornar
> >> >> > este
> >> >> > problema. Você poderia me ajudar?
> >> >> > Obrigado!
> >> >> > Rodrigo Pereira
> >> >> > (31)9326 3139
> >> >> >
> >> >> >
> >> >> > 2011/5/17 Paulo Justiniano <paulojus em leg.ufpr.br>
> >> >> >>
> >> >> >> A solucao do Henrique usa uma formula, portanto voce pode
> >> >> >> acrescentar
> >> >> >> termos como em
> >> >> >>
> >> >> >> unstack(x, resposta ~ fator1 + fator2)
> >> >> >>
> >> >> >> que o agrupamento/ordenacao se dará para as combinacoes dos
> valores
> >> >> >> dos
> >> >> >> fatores indicados na formula
> >> >> >>
> >> >> >> On Tue, 17 May 2011, Rodrigo Pereira wrote:
> >> >> >>
> >> >> >>> Olá, Henrique. Bom dia.
> >> >> >>> Você sabe como posso trabalhar com o unstack() quando tiver dois
> ou
> >> >> >>> mais
> >> >> >>> fatores?
> >> >> >>>
> >> >> >>> Obrigado!
> >> >> >>>
> >> >> >>> Rodrigo Pereira
> >> >> >>> (31)9326 3139
> >> >> >>>
> >> >> >>>
> >> >> >>> 2011/5/16 Henrique Dallazuanna <wwwhsd em gmail.com>
> >> >> >>>      Tente assim:
> >> >> >>>
> >> >> >>> unstack(x, resposta ~ fator)
> >> >> >>>
> >> >> >>>
> >> >> >>>      2011/5/16 Rodrigo Pereira <doforodrigo em gmail.com>
> >> >> >>> Caros colegas,
> >> >> >>> Estou com um problema básico, mas que não estou conseguindo
> >> >> >>> resolver
> >> >> >>> (falta de prática com o R...)
> >> >> >>>
> >> >> >>> Estou com o seguinte banco de dados:
> >> >> >>>
> >> >> >>>                    resposta            fator           sujeito
> >> >> >>> 1                   0.00                   R               1
> >> >> >>> 2                   2.96                   R               1
> >> >> >>> 3                  10.28                   R               1
> >> >> >>> 4                  12.42                   R               1
> >> >> >>> 5                  15.60                   R               1
> >> >> >>> 6                  14.23                   R               1
> >> >> >>> 7                  10.55                   R               1
> >> >> >>> 8                   8.00                   R               1
> >> >> >>> 9                   6.12                   R               1
> >> >> >>> 10                  3.24                   R               1
> >> >> >>> 11                  2.82                   R               1
> >> >> >>> 12                  1.18                   R               1
> >> >> >>> 13                  0.42                   R               1
> >> >> >>> 14                  0.00                   R               1
> >> >> >>> 15                  0.00                   R               1
> >> >> >>> 16                  0.00                   T               2
> >> >> >>> 17                  4.01                   T               2
> >> >> >>> 18                 19.82                   T               2
> >> >> >>> 19                 17.83                   T               2
> >> >> >>> 20                 12.74                   T               2
> >> >> >>> 21                  7.37                   T               2
> >> >> >>> 22                  7.73                   T               2
> >> >> >>> 23                  4.70                   T               2
> >> >> >>> 24                  4.11                   T               2
> >> >> >>> 25                  3.11                   T               2
> >> >> >>> 26                  3.19                   T               2
> >> >> >>> 27                  2.25                   T               2
> >> >> >>> 28                  0.44                   T               2
> >> >> >>> 29                  0.16                   T               2
> >> >> >>> 30                  0.00                   T               2
> >> >> >>>
> >> >> >>> Estou tentando utilizar a função unstack() para transformar este
> >> >> >>> banco
> >> >> >>> de
> >> >> >>> dados longo em largo da seguinte forma:
> >> >> >>>
> >> >> >>> R
> >> >> >>>
> >> >> >>> 0
> >> >> >>>
> >> >> >>>
> >> >> >>> T
> >> >> >>>
> >> >> >>> 0
> >> >> >>>
> >> >> >>> 2,96
> >> >> >>>
> >> >> >>> 4,01
> >> >> >>>
> >> >> >>> 10,28
> >> >> >>>
> >> >> >>> 19,82
> >> >> >>>
> >> >> >>> 12,42
> >> >> >>>
> >> >> >>> 17,83
> >> >> >>>
> >> >> >>> 15,6
> >> >> >>>
> >> >> >>> 12,74
> >> >> >>>
> >> >> >>> 14,23
> >> >> >>>
> >> >> >>> 7,37
> >> >> >>>
> >> >> >>> 10,55
> >> >> >>>
> >> >> >>> 7,73
> >> >> >>>
> >> >> >>> 8
> >> >> >>>
> >> >> >>> 4,7
> >> >> >>>
> >> >> >>> 6,12
> >> >> >>>
> >> >> >>> 4,11
> >> >> >>>
> >> >> >>> 3,24
> >> >> >>>
> >> >> >>> 3,11
> >> >> >>>
> >> >> >>> 2,82
> >> >> >>>
> >> >> >>> 3,19
> >> >> >>>
> >> >> >>> 1,18
> >> >> >>>
> >> >> >>> 2,25
> >> >> >>>
> >> >> >>> 0,42
> >> >> >>>
> >> >> >>> 0,44
> >> >> >>>
> >> >> >>> 0
> >> >> >>>
> >> >> >>> 0,16
> >> >> >>>
> >> >> >>> 0
> >> >> >>>
> >> >> >>> 0
> >> >> >>>
> >> >> >>>
> >> >> >>> Alguém sabe como consigo fazer essa mudança com ou sem a função
> >> >> >>> unstack()?
> >> >> >>>
> >> >> >>> Obrigado e abraço!
> >> >> >>>
> >> >> >>> Rodrigo Pereira
> >> >> >>> (31)9326 3139
> >> >> >>>
> >> >> >>> _______________________________________________
> >> >> >>> R-br mailing list
> >> >> >>> R-br em listas.c3sl.ufpr.br
> >> >> >>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >> >> >>>
> >> >> >>>
> >> >> >>>
> >> >> >>>
> >> >> >>> --
> >> >> >>> Henrique Dallazuanna
> >> >> >>> Curitiba-Paraná-Brasil
> >> >> >>> 25° 25' 40" S 49° 16' 22" O
> >> >> >>>
> >> >> >>> _______________________________________________
> >> >> >>> R-br mailing list
> >> >> >>> R-br em listas.c3sl.ufpr.br
> >> >> >>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >> >> >>>
> >> >> >>>
> >> >> >>>
> >> >> >>
> >> >> >> _______________________________________________
> >> >> >> R-br mailing list
> >> >> >> R-br em listas.c3sl.ufpr.br
> >> >> >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >> >> >>
> >> >> >
> >> >> >
> >> >> > _______________________________________________
> >> >> > R-br mailing list
> >> >> > R-br em listas.c3sl.ufpr.br
> >> >> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Henrique Dallazuanna
> >> >> Curitiba-Paraná-Brasil
> >> >> 25° 25' 40" S 49° 16' 22" O
> >> >> _______________________________________________
> >> >> R-br mailing list
> >> >> R-br em listas.c3sl.ufpr.br
> >> >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >> >
> >> >
> >> > _______________________________________________
> >> > R-br mailing list
> >> > R-br em listas.c3sl.ufpr.br
> >> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >> >
> >> >
> >>
> >>
> >>
> >> --
> >> Henrique Dallazuanna
> >> Curitiba-Paraná-Brasil
> >> 25° 25' 40" S 49° 16' 22" O
> >> _______________________________________________
> >> R-br mailing list
> >> R-br em listas.c3sl.ufpr.br
> >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >
> >
> > _______________________________________________
> > R-br mailing list
> > R-br em listas.c3sl.ufpr.br
> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> >
> >
>
>
>
> --
> Henrique Dallazuanna
> Curitiba-Paraná-Brasil
> 25° 25' 40" S 49° 16' 22" O
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20110517/98e1b996/attachment.html>


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