
Caros, existe uma forma mais prática de somar várias variáveis por um determinado by, ao invés da maneira que faço atualmente? Arquivo de dados (arquivo) codigo valor1 valor2 valor3 a 3 25 30 a 5 10 50 a 2 15 20 b 15 85 20 b 5 15 10 c 2 5 25 c 4 7 5 c 2 5 8 c 2 3 12 1) Utilizo o comando arq1 = aggregate(arq1$valor1, list(arquivo$codigo), sum) para somar o valor1 por cada codigo. 2) Utilizo o comando arq2 = aggregate(arq1$valor2, list(arquivo$codigo), sum) para somar o valor2 por cada codigo. 3) Utilizo o comando arq3 = aggregate(arq1$valor3, list(arquivo$codigo), sum) para somar o valor3 por cada codigo. 4) Depois junto o arq1, arq2 e arq3 e fico com um arquivo igual ao abaixo: codigo valor1 valor2 valor3 a 10 50 100 b 20 100 30 c 10 20 50

Tente algo com o próprio aggregate... da forma:
aggregate(arquivo[, 2:4], by = list(arquivo[,1]), FUN = sum)
Comigo vem funcionando... reporte qualquer resultado! att, FH 2012/10/1 Carlos Mendonça <csaeslpv@centroin.com.br>
Caros,
existe uma forma mais prática de somar várias variáveis por um determinado by, ao invés da maneira que faço atualmente?
Arquivo de dados (arquivo)
codigo valor1 valor2 valor3 a 3 25 30 a 5 10 50 a 2 15 20 b 15 85 20 b 5 15 10 c 2 5 25 c 4 7 5 c 2 5 8 c 2 3 12
1) Utilizo o comando arq1 = aggregate(arq1$valor1, list(arquivo$codigo), sum) para somar o valor1 por cada codigo.
2) Utilizo o comando arq2 = aggregate(arq1$valor2, list(arquivo$codigo), sum) para somar o valor2 por cada codigo.
3) Utilizo o comando arq3 = aggregate(arq1$valor3, list(arquivo$codigo), sum) para somar o valor3 por cada codigo.
4) Depois junto o arq1, arq2 e arq3 e fico com um arquivo igual ao abaixo:
codigo valor1 valor2 valor3 a 10 50 100 b 20 100 30 c 10 20 50
_______________________________________________ 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.

FH, muitíssimo obrigado. Funcionou perfeitamente. Agora só mais uma dúvida, caso eu queira ficar só com a primeira observação de cada código desse arquivo de dados (arquivo), como eu faria? Em 1 de outubro de 2012 16:48, Carlos Mendonça <csaeslpv@centroin.com.br>escreveu:
Caros,
existe uma forma mais prática de somar várias variáveis por um determinado by, ao invés da maneira que faço atualmente?
Arquivo de dados (arquivo)
codigo valor1 valor2 valor3 a 3 25 30 a 5 10 50 a 2 15 20 b 15 85 20 b 5 15 10 c 2 5 25 c 4 7 5 c 2 5 8 c 2 3 12
1) Utilizo o comando arq1 = aggregate(arq1$valor1, list(arquivo$codigo), sum) para somar o valor1 por cada codigo.
2) Utilizo o comando arq2 = aggregate(arq1$valor2, list(arquivo$codigo), sum) para somar o valor2 por cada codigo.
3) Utilizo o comando arq3 = aggregate(arq1$valor3, list(arquivo$codigo), sum) para somar o valor3 por cada codigo.
4) Depois junto o arq1, arq2 e arq3 e fico com um arquivo igual ao abaixo:
codigo valor1 valor2 valor3 a 10 50 100 b 20 100 30 c 10 20 50
-- Um abraço, Carlos Mendonça.
participantes (2)
-
Carlos Mendonça
-
FHRB Toledo