
Jackson, Se a quantidade de medidas que você possui for alta, entao o seu conjunto de dados é um perfeito candidato para pacotes que trabalhem com big data. A minha recomendação é o data.table, porque ele é otimizado para trabalhar com dados de tamanho na casa das dezenas ou centenas de gigabytes. A seguir eu vou mostrar um exemplo da sumarizacao que você precisa fazer, baseado em dados aleatórios de temperatura gerados no próprio exemplo. Gerei dados de temperatura porque a variabilidade dos dados é mais previsível, mas é só para você ter ideia de como funciona e adaptar para o seu caso. O truque do código é separar a data em dia, mes e ano, e rodar o comando de sumarização para a frequencia que voce precisa (diaria, mensal etc). Veja o codigo a seguir e reporte de volta caso tenha alguma duvida. # Cria sequencia de datasidx = seq(as.Date("1961/1/1"), as.Date("2010/12/31"), by = "day") # Cria sequencia aleatória de temperatura entre 10C e 30Ctemp = runif(10, 30, n=length(idx)) # Organiza tudo em data frame, incluindo data "separada" em ano, mes e diaDF <- data.frame(date=idx, year=as.numeric(format(idx, format="%Y")), month=as.numeric(format(idx, format="%m")), day=as.numeric(format(idx, format="%d")), temp=temp) # Carrega pacote e converte data frame em data tablelibrary(data.table)DT <- data.table(DF) # Roda as operações de sumarização que voce precisa# Obviamente substitua mean por sum para somar os seus dados reais.dt1 <- DT[, mean(temp), by = "day"]dt2 <- DT[, mean(temp), by = c("day","month")] Espero que ajude, -- Thiago V. dos Santos PhD studentLand and Atmospheric ScienceUniversity of Minnesota On Sunday, June 25, 2017 3:58 PM, Jackson Rodrigues via R-br <r-br@listas.c3sl.ufpr.br> wrote: Olá pessoal, Preciso muito da ajuda de vocês. Tenho que sintetizar dados de precipitação de vários dias e meses em uma única tabela. No entanto, os dados que possuo estão dispersos em dias e horas diferentes. A maior frequência de observações estão nos dias mais chuvosos enquanto os dias mais secos tem poucas. Vou colocar aqui um exemplo de tabela como os dados estão e em seguida a tabela que gostaria que se tornasse. Os dados estão como na tabela abaixo que representa a precipitaçção de 1 único ano. Vejam que a quantidade de observações varia de um dia para outro o ano todo. | | Dia | Hora | Prec | | Jan | 1 | 7:00 | 20 | | 1 | 7:20 | 15 | | 1 | 7:30 | 5 | | 2 | 6:00 | 10 | | 2 | 15:00 | 16 | | ... | ... | ... | | 31 | 7:00 | 2 | | Fev | 1 | 9:00 | 6 | | 1 | 9:45 | 30 | | 2 | 6:45 | 12 | | 2 | 16:00 | 20 | | 2 | 22:00 | 60 | | ... | ... | ... | | 28 | 11:30 | 25 | | ... | ... | ... | ... | | Dez | 31 | ... | ... | Desse jeito fica difícil trabalhar quando for comparar com a precipitação dos outros anos.Assim gostaria de sintetizar toda essa informação em uma única tabela. Somar tudo que for de Janeiro 1, somar tudo que for de janeiro 2 e assim por diante até o fim do ano gerando a tabela a seguir. | Mês Dia-> | 1 | 2 | 3 | 4 | ... | 31 | | | Jan | 40 | 16 | 50 | 66 | ... | 90 | Total precipitado por dia | | Fev | 60 | 120 | 25 | 45 | ... | 87 | | ... | ... | ... | ... | ... | ... | ... | | Dez | 120 | 30 | 26 | 90 | ... | 5 | A grande questão é como fazê-lo. Preciso de um comando que diga some tudo que for do dia 1 de Jan, some tudo de 2 de Jan e assim sucessivamente. Alguém poderia me ajudar com isso? Obrigado Jackson -_______________________________________________ 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.