Aplicar função em parte de um vetor

Prezados, Estou com uma dificuldade de atribuir uma função à parte de um vetor. Suponhamos o seguinte data.frame: ano <-c(2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011) cultivar <-c("c1","c1","c1","c1","c2","c2","c2","c2","c3","c3","c3","c3","c4","c4","c4","c4") produtividade <- c(3000,4023,5432,3212,4567,6543,5467,2345,3245,99,5467,7654,3214,1234,5456,-99) exemplo <- data.frame(ano,cultivar, produtividade) Gostaria de calcular separadamente as médias das produtividades de cada uma das cultivares, para o intervalo de anos agrícolas (2008-2011). Desde já agradeço a colaboração, -- João Rodrigo de Castro Programa de Pós-Graduação em Meteorologia - Universidade Federal de Pelotas Bolsista Laboratório de Agrometeorologia - Embrapa Clima Temperado

Isso? aggregate(produtividade ~ cultivar, mean, data = exemplo) 2015-11-25 15:32 GMT-02:00 joão Rodrigo Castro <joaorodrigo2005@gmail.com>:
Prezados,
Estou com uma dificuldade de atribuir uma função à parte de um vetor. Suponhamos o seguinte data.frame: ano <-c(2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011) cultivar <-c("c1","c1","c1","c1","c2","c2","c2","c2","c3","c3","c3","c3","c4","c4","c4","c4") produtividade <- c(3000,4023,5432,3212,4567,6543,5467,2345,3245,99,5467,7654,3214,1234,5456,-99) exemplo <- data.frame(ano,cultivar, produtividade)
Gostaria de calcular separadamente as médias das produtividades de cada uma das cultivares, para o intervalo de anos agrícolas (2008-2011).
Desde já agradeço a colaboração,
-- João Rodrigo de Castro Programa de Pós-Graduação em Meteorologia - Universidade Federal de Pelotas Bolsista Laboratório de Agrometeorologia - Embrapa Clima Temperado
_______________________________________________ R-br mailing list R-br@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.

Não roda :/ Error in as.data.frame.default(x) : cannot coerce class "formula" into a data.frame Em 25 de novembro de 2015 15:36, Rodrigo Coster <rcoster@gmail.com> escreveu:
Isso?
aggregate(produtividade ~ cultivar, mean, data = exemplo)
2015-11-25 15:32 GMT-02:00 joão Rodrigo Castro <joaorodrigo2005@gmail.com> :
Prezados,
Estou com uma dificuldade de atribuir uma função à parte de um vetor. Suponhamos o seguinte data.frame: ano <-c(2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011) cultivar <-c("c1","c1","c1","c1","c2","c2","c2","c2","c3","c3","c3","c3","c4","c4","c4","c4") produtividade <- c(3000,4023,5432,3212,4567,6543,5467,2345,3245,99,5467,7654,3214,1234,5456,-99) exemplo <- data.frame(ano,cultivar, produtividade)
Gostaria de calcular separadamente as médias das produtividades de cada uma das cultivares, para o intervalo de anos agrícolas (2008-2011).
Desde já agradeço a colaboração,
-- João Rodrigo de Castro Programa de Pós-Graduação em Meteorologia - Universidade Federal de Pelotas Bolsista Laboratório de Agrometeorologia - Embrapa Clima Temperado
_______________________________________________ R-br mailing list R-br@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@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.
-- João Rodrigo de Castro Programa de Pós-Graduação em Meteorologia Bolsista Laboratório de Agrometeorologia - Embrapa Clima Temperado Universidade Federal de Pelotas

Aqui funcionou:
ano <-c(2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011) cultivar <-c("c1","c1","c1","c1","c2","c2","c2","c2","c3","c3","c3","c3","c4","c4","c4","c4") produtividade <- c(3000,4023,5432,3212,4567,6543,5467,2345,3245,99,5467,7654,3214,1234,5456,-99) exemplo <- data.frame(ano,cultivar, produtividade) aggregate(produtividade ~ cultivar, mean, data = exemplo) cultivar produtividade 1 c1 3916.75 2 c2 4730.50 3 c3 4116.25 4 c4 2451.25
2015-11-25 15:55 GMT-02:00 joão Rodrigo Castro <joaorodrigo2005@gmail.com>:
Não roda :/
Error in as.data.frame.default(x) : cannot coerce class "formula" into a data.frame
Em 25 de novembro de 2015 15:36, Rodrigo Coster <rcoster@gmail.com> escreveu:
Isso?
aggregate(produtividade ~ cultivar, mean, data = exemplo)
2015-11-25 15:32 GMT-02:00 joão Rodrigo Castro <joaorodrigo2005@gmail.com
:
Prezados,
Estou com uma dificuldade de atribuir uma função à parte de um vetor. Suponhamos o seguinte data.frame: ano <-c(2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011,2008,2009,2010,2011) cultivar <-c("c1","c1","c1","c1","c2","c2","c2","c2","c3","c3","c3","c3","c4","c4","c4","c4") produtividade <- c(3000,4023,5432,3212,4567,6543,5467,2345,3245,99,5467,7654,3214,1234,5456,-99) exemplo <- data.frame(ano,cultivar, produtividade)
Gostaria de calcular separadamente as médias das produtividades de cada uma das cultivares, para o intervalo de anos agrícolas (2008-2011).
Desde já agradeço a colaboração,
-- João Rodrigo de Castro Programa de Pós-Graduação em Meteorologia - Universidade Federal de Pelotas Bolsista Laboratório de Agrometeorologia - Embrapa Clima Temperado
_______________________________________________ R-br mailing list R-br@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@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.
-- João Rodrigo de Castro Programa de Pós-Graduação em Meteorologia Bolsista Laboratório de Agrometeorologia - Embrapa Clima Temperado Universidade Federal de Pelotas
_______________________________________________ R-br mailing list R-br@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.

João, A variável ano está como factor? ano <- as.factor(ano) aggregate(produtividade , by = list(cultivar,ano), mean, data = exemplo) -- Atenciosamente Felipe E. Barletta Mendes Estatístico - Conre3 9766-A +55 (41)-92077191 +55 (41)-33287216

Felipe e Rodrigo, obrigado pela ajuda! Com a sugestão do Rodrigo apresentava aquele erro mencionado, o que foi resolvido utilizando a sintaxe escrita pelo Felipe substituindo o "~" por "by" aggregate(produtividade , by = list(cultivar), mean, data = exemplo) Muito obrigado pessoal. Em 25 de novembro de 2015 16:27, Felipe <felipe.e.barletta@gmail.com> escreveu:
João,
A variável ano está como factor?
ano <- as.factor(ano) aggregate(produtividade , by = list(cultivar,ano), mean, data = exemplo)
-- Atenciosamente Felipe E. Barletta Mendes Estatístico - Conre3 9766-A +55 (41)-92077191 +55 (41)-33287216
_______________________________________________ R-br mailing list R-br@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 fornea cdigo mnimo reproduzvel.
-- João Rodrigo de Castro Programa de Pós-Graduação em Meteorologia Bolsista Laboratório de Agrometeorologia - Embrapa Clima Temperado Universidade Federal de Pelotas
participantes (3)
-
Felipe
-
joão Rodrigo Castro
-
Rodrigo Coster