[R-br] RES: Reshape

Fernando Souza nandodesouza em gmail.com
Quinta Novembro 16 14:21:54 -02 2017


install.packages("tidyr")
library(tidyr)

dados<-structure(list(id = 1:6, UF = structure(1:6, .Label = c("Acre",
"Alagoas", "Amapá", "Amazonas", "Bahia", "Ceará"), class = "factor"),
    x2002 = c(192L, 1251L, 204L, 958L, 6885L, 3705L), x2003 = c(189L,
    1269L, 198L, 1050L, 6901L, 3871L), x2004 = c(311L, 1292L,
    239L, 1433L, 7167L, 3944L), x2005 = c(311L, 1357L, 262L,
    1528L, 7336L, 4120L), x2006 = c(333L, 1413L, 252L, 1502L,
    7292L, 4143L), x2007 = c(327L, 1410L, 294L, 1488L, 7338L,
    4138L), x2008 = c(338L, 1355L, 317L, 1531L, 7665L, 4314L),
    x2009 = c(354L, 1401L, 299L, 1673L, 7792L, 4380L), x2011 = c(357L,
    1344L, 302L, 1689L, 7602L, 4121L), x2012 = c(381L, 1391L,
    311L, 1720L, 7416L, 4184L), x2013 = c(337L, 1429L, 332L,
    1771L, 7530L, 4215L), x2014 = c(373L, 1417L, 355L, 1908L,
    7879L, 4319L)), .Names = c("id", "UF", "x2002", "x2003",
"x2004", "x2005", "x2006", "x2007", "x2008", "x2009", "x2011",
"x2012", "x2013", "x2014"), class = "data.frame", row.names = c(NA,
-6L))


arrumado<-dados[,-1]%>%gather(key="ano",value="valor",-c(UF))

arrumado2<-arrumado%>%spread(key= "UF",value= "valor")

Em 16 de novembro de 2017 12:53, Jeanne Costa via R-br <
r-br em listas.c3sl.ufpr.br> escreveu:

> Tente usar o a função dcast, do pkg reshape2. Fiz isso no código abaixo:
>
>
> > head(latlon_dist)
>             ID_ZAP5M            parque   distance   dist_km
> 1: V_A20380-AM154583 ESTADUAL DO BELÉM 0.02678070  2.678070
> 2: V_A20380-AM154583        BURLE MARX 0.14722285 14.722285
> 3: V_A20380-AM154583     INDEPENDENCIA 0.02756847  2.756847
> 4: V_A20380-AM154583   JARDIM BOTANICO 0.08291090  8.291090
> 5: V_A20380-AM154583          CORDEIRO 0.11904040 11.904040
> 6: V_A20380-AM154583    PARQUE DO POVO 0.10402230 10.402230
> > mdist2 <- dcast(data = latlon_dist, formula = ID_ZAP5M~parque, value.var
> = 'dist_km',
> +                 fun.aggregate =mean)
> > head(mdist2)
>          ID_ZAP5M  ACLIMACAO BUENOS AIRES BURLE MARX     CERET CHACARA DO
> JOCKEY  CORDEIRO
> 1 V_A1-ZAP1001667  2.0396479     2.844645   8.525611  9.254039
> 9.502118  7.010958
> 2 V_A1-ZAP1002649  0.6065181     3.697467   9.611037  7.867584
>  10.874485  7.486414
> 3 V_A1-ZAP1004006  8.0701516     7.037070   3.100807 15.332267
> 3.451979  5.179773
> 4 V_A1-ZAP1004795 11.5358657     7.762406  10.507915 17.698645
> 7.621947 12.969276
> 5 V_A1-ZAP1008204  4.1418657     2.540428  12.543114  8.003843
>  12.639629 11.513499
> 6 V_A1-ZAP1008249  5.1073948     2.751751   7.304517 12.072894
> 7.164578  7.552054
>   ESTADUAL DO BELÉM IBIRAPUERA INDEPENDENCIA JARDIM BOTANICO JUVENTUDE
> PARQUE DA LUZ
> 1          7.012610  0.9911163      3.912788        6.929003  7.002871
> 4.22853720
> 2          5.963840  1.9098469      2.423499        6.291981  6.818811
> 4.15078971
> 3         13.109059  4.3334982      9.775095        9.089064 12.112062
> 9.48957949
> 4         14.259577  9.2082404     13.394847       15.805615 11.000220
> 9.74552685
> 5          4.457268  5.4825756      5.225521       10.733382  2.514522
> 0.01950312
> 6          9.311688  2.4820681      7.008602        9.236796  7.819413
> 5.27780835
>   PARQUE DO CARMO PARQUE DO POVO VILA LOBOS
> 1        17.57522       3.787772   7.036348
> 2        16.09237       5.148572   8.498657
> 3        23.30077       1.854193   4.814991
> 4        26.52802       7.770679   1.925128
> 5        16.86382       7.464910   8.188995
> 6        20.60717       2.319196   3.899231
>
>
>
> Em 16 de novembro de 2017 11:26, João Pedro Domingues via R-br <
> r-br em listas.c3sl.ufpr.br> escreveu:
>
>> Procura a função para realizar a transposta da matriz que vai dar certo.
>> Mais simples
>>
>>
>>
>> *João Pedro Araujo Domingues*
>>
>> C +55 27 99232-9582
>>
>>
>>
>> *De:* R-br [mailto:r-br-bounces em listas.c3sl.ufpr.br] *Em nome de *Edson
>> Lira via R-br
>> *Enviada em:* Thursday, November 16, 2017 11:17 AM
>> *Para:* a lista Brasileira oficial de discussão do programa R. <
>> r-br em listas.c3sl.ufpr.br>
>> *Assunto:* [R-br] Reshape
>>
>>
>>
>> Bom dia caros amigos, estou trabalhando com a base de dados
>> abaixo(somente 6 linhas):
>>
>>
>>
>>    id     UF    x2002 x2003 x2004 x2005 x2006 x2007 x2008 x2009 x2011
>> x2012 x2013 x2014
>> 1  1     Acre      192    189     311     311     333    327      338
>> 354     357     381     337   373
>> 2  2  Alagoas  1251  1269  1292    1357   1413  1410    1355  1401
>> 1344   1391   1429  1417
>> 3  3    Amapá    204   198   239   262   252   294   317   299   302
>> 311   332   355
>> 4  4 Amazonas   958  1050  1433  1528  1502  1488  1531  1673  1689
>> 1720  1771  1908
>> 5  5    Bahia  6885  6901  7167  7336  7292  7338  7665  7792  7602
>> 7416  7530  7879
>> 6  6    Ceará  3705  3871  3944  4120  4143  4138  4314  4380  4121
>> 4184  4215  4319
>>
>>
>> Estou  usando o reshape para tentar transformar as linhas em colunas, ou
>> seja, cada uma UF seria uma coluna, e assim com as demais
>>
>> Como gostaria que ficasse:
>>
>>
>>
>> Acre Alagoas Amapá Amazonas Bahia Ceará  ano
>>
>> 192      1251                                             3705  2002
>>
>> 189      1269                                             3871  2003
>>
>> 311     1293                                              3944  2004
>>
>> ...       ....
>>
>>
>>
>> Estou usando a rotina:
>>
>>
>>
>>
>>
>> pea<-reshape(pea1,
>>                   varying=c("x2002","x2003","x20
>> 04","x2005","x2006","x2007",
>>                   "x2008","x2009","x2011","x2012","x2013","x2014"),
>>                    v.names="Medida",
>>                    timevar="UF",
>>                    times=c("Acre","Alagoas","Amapá","Amazonas","Bahia",
>>                          "Ceará","Distrito Federal","Espírito Santo",
>>                          "Goiás","Maranhão","Mato Grosso","Mato Grosso do
>> Sul",
>>                          "Minas Gerais","Pará","Paraíba","Paraná","
>> Pernambuco",
>>                          "Piauí","Rio de Janeiro","Rio Grande do Norte",
>>                          "Rio Grande do Sul","Rondônia","Roraima",
>>                          "Santa Catarina","São
>> Paulo","Sergipe","Tocantins"),
>>                    new.row.names=1:27,
>>                    direction="wide")
>>
>> que está me dando o erro:
>>
>>
>>
>> Erro em varying[, i] : número incorreto de dimensões
>>
>> Alguém tem alguma sugesstão?
>>
>>
>>
>> [  ]'s
>>
>> Prof. Edson Lira, Me
>> Estatístico
>> Manaus-Amazonas
>>
>> _______________________________________________
>> 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.
>>
>
>
> _______________________________________________
> 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.
>



-- 
=========================================
Fernando Souza
Zootecnista, DSc. Produção e Alimentação Animal
Celular: (31)99796-8781 (Vivo)
E-mail:nandodesouza em gmail.com <e-mail%3Anandodesouza em gmail.com>
Lattes: http://lattes.cnpq.br/6519538815038307
Blog: https://producaoanimalcomr.wordpress.com/
==========================================
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20171116/a01140a2/attachment.html>


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