[R-br] Manipulação de data frame

Éder Comunello comunello.eder em gmail.com
Quarta Março 12 19:49:32 BRT 2014


Boa tarde,

Uma sugestão, alocando o resultado em um arranjo matricial (array):


### <code r>
### Partindo de um data.frame (DF)
DF  <- as.data.frame(matrix(runif(50), 10, 5, byrow=T)); DF
LST <- lapply(1:length(DF), function(x) as.matrix(DF/DF[,x]))
ARR <- array(unlist(LST), dim = c(nrow(LST[[1]]), ncol(LST[[1]]),
length(LST)))

### Algumas operações possíveis
ARR
ARR[,,c(3:4)]
ind <- which(ARR>5, arr.ind=T); ind
data.frame(ind, val=ARR[ind])
### </code>

Éder Comunello <c <comunello.eder em gmail.com>omunello.eder em gmail.com>
Dourados, MS - [22 16.5'S, 54 49'W]


Em 12 de março de 2014 13:06, Rodrigo Muniz <uenf.rodrigo em gmail.com>escreveu:

> Olá Gledson, eu precisava de um outro dataframe, então coloquei o comando
> "as.data.frame" e deu certo.
> Muito obrigado.
>
>
> 2014-03-12 13:32 GMT-03:00 gledson picharski <gledson.picharski em gmail.com>
> :
>
> Rodrigo,
>>
>> teria que saber que tipo de saída deseja para lhe ajudar mais
>> adequadamente,
>> mas uma forma de dividir todas as colunas por todas do data.frame é:
>>
>> DF <- as.data.frame(matrix(rnorm(100), ncol = 20, nrow = 5))
>> lapply(DF,"/",DF)
>>
>>
>> abraço
>> Gledson
>>
>>
>>
>>
>>
>>
>>
>> Em 12 de março de 2014 10:23, Rodrigo Muniz <uenf.rodrigo em gmail.com>escreveu:
>>
>> Obrigado Henrique, ainda não deu certo, mas pelo menos já tenho uma ideia
>>> por onde começar.
>>> Att...
>>>
>>>
>>> 2014-03-11 22:57 GMT-03:00 Henrique Dallazuanna <wwwhsd em gmail.com>:
>>>
>>> Assumindo DF como seu data.frame:
>>>>
>>>> DF <- as.data.frame(matrix(rnorm(100), ncol = 20, nrow = 5))
>>>> DF[-1] / DF[-ncol(DF)]
>>>>
>>>>
>>>> 2014-03-11 20:40 GMT-03:00 Rodrigo Muniz <uenf.rodrigo em gmail.com>:
>>>>
>>>>>  Caros membros da lista,
>>>>> Desculpe por não enviar nenhum exemplo ou lista de comando.
>>>>> Tenho um dataframe com 1500 colunas e 700 linhas, eu preciso fazer uma
>>>>> razão
>>>>> entre todas as colunas, ou seja, C1/C2, C1/C3, C1/C4....C1499/C1500.
>>>>> Fazer essa divisão de forma manual apenas por indexação dos vetores é
>>>>> simples, porém, isso daria muito trabalho e acredito que deve haver um
>>>>> jeito mais fácil de fazer isso. Porém não tenho a menor ideia de como
>>>>> começar a fazer-lo.
>>>>> Por isso peço a ajuda de vocês, se alguém conhece alguma forma, algum
>>>>> exemplo, ou mesmo algum material que eu possa consultar, para que eu tenha
>>>>> esse "input" inicial.
>>>>> Desde já agradeço.
>>>>> Att...
>>>>>
>>>>> --
>>>>> *Rodrigo A. Muniz*
>>>>> Eng. Agrônomo. Ms Produção Vegetal (UENF)
>>>>> Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP)
>>>>> Cel (19) 8300-4333 (Pessoal)
>>>>> Tel (19) 3375-1196 (Residêncial)
>>>>> Tel (19) 3447-8537 (Trabalho)
>>>>>
>>>>> _______________________________________________
>>>>> 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.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> 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
>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>>>> código mínimo reproduzível.
>>>>
>>>
>>>
>>>
>>> --
>>> *Rodrigo A. Muniz*
>>> Eng. Agrônomo. Ms Produção Vegetal (UENF)
>>> Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP)
>>> Cel (19) 8300-4333 (Pessoal)
>>> Tel (19) 3375-1196 (Residêncial)
>>> Tel (19) 3447-8537 (Trabalho)
>>>
>>> _______________________________________________
>>> 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.
>>
>
>
>
> --
> *Rodrigo A. Muniz*
> Eng. Agrônomo. Ms Produção Vegetal (UENF)
> Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP)
> Cel (19) 8300-4333 (Pessoal)
> Tel (19) 3375-1196 (Residêncial)
> Tel (19) 3447-8537 (Trabalho)
>
> _______________________________________________
> 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/20140312/47a33351/attachment.html>


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