[R-br] RES: Criação de data.frame com valores médios de variaveis

Alisson Lucrécio alisson.lucrecio em ifgoiano.edu.br
Segunda Setembro 15 10:28:42 BRT 2014


Leonardo,

Bom dia.

Tente o seguinte script com a ajuda do pacote plyr, mas se quiser mais
eficiência de uso com computancão paralela, use o pacote dplyr.

### ----------------------------------- ###
---------------------------------###

d1$Triplicata <- factor(d1$Triplicata)

str(d1)

library(plyr)

ddply(d1, c("Tipo", "Trat", "Tempo"), summarise, acidezKOH=
mean(acidezKOH), acidezOLEIC = mean(acidezOLEIC))

2014-09-15 9:59 GMT-03:00 Leonard de Assis <assis.leonard em gmail.com>:

> Olhe a função aggregate, ela faz algo parecido com o que você precisa
>
>
>
>
>
> *De:* R-br [mailto:r-br-bounces em listas.c3sl.ufpr.br] *Em nome de *Gilenio
> Borges Fernandes
> *Enviada em:* domingo, 14 de setembro de 2014 15:09
> *Para:* r-br em listas.c3sl.ufpr.br
> *Assunto:* [R-br] Criação de data.frame com valores médios de variaveis
>
>
>
> Prezados(as)
>
>
>
> Tenho um banco de dados com as seguintes variáveis (colunas):
>
> Tipo Trat Tempo Triplicata acidezKOH e acidezOLEIC
>
>
> Segue o CMR com a estrutura do meu banco de dados:
>
> d1=structure(list(Tipo = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L,
>
> 1L, 1L, 1L, 1L, 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, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L,
>
> 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L,
>
> 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L), .Label = c("TI1", "TI2",
>
> "TI3"), class = "factor"), Trat = structure(c(1L, 1L, 1L, 1L,
>
> 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L,
>
> 3L, 3L, 3L, 3L, 3L, 3L, 3L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
>
> 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L,
>
> 3L, 3L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L,
>
> 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L), .Label = c("TR1",
>
> "TR2", "TR3"), class = "factor"), Tempo = c(0L, 0L, 0L, 3L, 3L,
>
> 3L, 6L, 6L, 6L, 0L, 0L, 0L, 3L, 3L, 3L, 6L, 6L, 6L, 0L, 0L, 0L,
>
> 3L, 3L, 3L, 6L, 6L, 6L, 0L, 0L, 0L, 3L, 3L, 3L, 6L, 6L, 6L, 0L,
>
> 0L, 0L, 3L, 3L, 3L, 6L, 6L, 6L, 0L, 0L, 0L, 3L, 3L, 3L, 6L, 6L,
>
> 6L, 0L, 0L, 0L, 3L, 3L, 3L, 6L, 6L, 6L, 0L, 0L, 0L, 3L, 3L, 3L,
>
> 6L, 6L, 6L, 0L, 0L, 0L, 3L, 3L, 3L, 6L, 6L, 6L), Triplicata = c(1L,
>
> 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L,
>
> 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L,
>
> 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L,
>
> 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L,
>
> 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L
>
> ), acidezKOH = c(2.29, 2.29, 2.38, 6.16, 6.16, 5.92, 4.82, 5.04,
>
> 5.04, 3.37, 3.54, 3.69, 5.92, 5.92, 5.71, 5.8, 5.75, 5.72, 3.16,
>
> 3.02, 3.22, 5.33, 5.33, 5.3, 5.66, 5.75, 5.7, 0.23, 0.23, 0.23,
>
> 0.3, 0.3, 0.3, 0.34, 0.31, 0.31, 0.26, 0.29, 0.26, 0.33, 0.36,
>
> 0.33, 0.43, 0.4, 0.43, 0.26, 0.26, 0.29, 0.3, 0.33, 0.3, 0.34,
>
> 0.31, 0.31, 0.09, 0.09, 0.09, 0.33, 0.33, 0.33, 0.37, 0.37, 0.34,
>
> 0.14, 0.14, 0.14, 0.3, 0.3, 0.3, 0.31, 0.34, 0.34, 0.57, 0.57,
>
> 0.57, 0.33, 0.33, 0.33, 0.8, 0.77, 0.8), acidezOLEIC = c(1.15,
>
> 1.15, 1.2, 3.1, 3.1, 2.97, 2.42, 2.54, 2.54, 1.69, 1.78, 1.85,
>
> 2.98, 2.98, 2.87, 2.92, 2.89, 2.87, 1.59, 1.52, 1.62, 2.68, 2.68,
>
> 2.66, 2.85, 2.89, 2.86, 0.11, 0.11, 0.11, 0.15, 0.15, 0.15, 0.17,
>
> 0.16, 0.16, 0.13, 0.14, 0.13, 0.17, 0.18, 0.17, 0.22, 0.2, 0.21,
>
> 0.13, 0.13, 0.14, 0.15, 0.17, 0.15, 0.17, 0.16, 0.16, 0.04, 0.04,
>
> 0.04, 0.17, 0.17, 0.17, 0.19, 0.19, 0.17, 0.07, 0.07, 0.07, 0.15,
>
> 0.15, 0.15, 0.17, 0.16, 0.16, 0.29, 0.29, 0.29, 0.17, 0.17, 0.17,
>
> 0.4, 0.39, 0.4)), .Names = c("Tipo", "Trat", "Tempo", "Triplicata",
>
> "acidezKOH", "acidezOLEIC"), class = "data.frame", row.names = c(NA,
>
> -81L))
>
>
>
>
>
> Preciso criar um banco de dados (data.frame) com as colunas: Tipo Trat
> Tempo e mais as colunas acidezKOH e acidezOLEIC com a média das três
> Triplicatas. Tentei fazer com a função tapply, mas, não resolve porque não
> cria uma estrutura de data.frame. Gostaria de ter auxilio da lista para
> este problema.
>
>
>
> Desde já agradeço.
>
>
>
> Cordialmente,
>
> --
>
> Gilenio Borges Fernandes
>
> Professor Associado IV (Aposentado)
> Universidade Federal da Bahia
> Instituto de Matemática
> Departamento de Estatística
> Av. Adhemar de Barros, s/n – Ondina.
> 40.170-110 - Salvador - BA, Brasil
> Tel.: (071)3283-6340/6341/6337  Fax:  (071)3283-6336
> URL: http://lattes.cnpq.br/6764860618464860
>
> _______________________________________________
> 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.
>



-- 
Alisson Lucrecio da Costa
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20140915/44d6ac71/attachment.html>
-------------- Próxima Parte ----------
Um anexo não-texto foi limpo...
Nome: image001.png
Tipo: image/png
Tamanho: 15518 bytes
Descrição: não disponível
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20140915/44d6ac71/attachment.png>


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