[R-br] Filtrar por data
Gabriel Bruno de Lemos
gblemos em usp.br
Domingo Outubro 14 14:33:33 BRT 2012
Boa tarde!
Tenho um banco de dados com observações diárias durante um período de 50
anos. Desejo filtrar alguns períodos específicos, tais como todos os dias
10/04 de cada ano.
Alguém saberia como realizar tal busca por data?
A forma que utilizei para resolver no “jeitinho brasileiro” foi usar o Excel
para criar uma coluna com o dia e outra com o mês de cada data. Em seguida,
no R, faço uma busca usando o comando
## Datas
ini=as.Date("1961-01-01",origin="1899-12-30",format="%Y-%m-%d")
fim=as.Date("2010-12-31",origin="1899-12-30",format="%Y-%m-%d")
serie=seq.Date(from=ini,to=fim,by="day")
## Criei o “dados_excel” no Excel usando as funções “Dia()” e “Mês”. Em
seguida criei a “tabela” no R adicionando estes dois vetores à série “Data”.
tabela <- data.frame(serie,dados_excel)
head(tabela)
# dados.Data Dia Mes Ano
#1 1961-01-01 1 1 1961
#2 1961-01-02 2 1 1961
#3 1961-01-03 3 1 1961
#4 1961-01-04 4 1 1961
#5 1961-01-05 5 1 1961
#6 1961-01-06 6 1 1961
head(tabela[tabela$Dia==10 & tabela$Mes==4,])
# dados.Data Dia Mes Ano
#100 1961-04-10 10 4 1961
#465 1962-04-10 10 4 1962
#830 1963-04-10 10 4 1963
#1196 1964-04-10 10 4 1964
#1561 1965-04-10 10 4 1965
#1926 1966-04-10 10 4 1966
Este mecanismo funcionou mas gostaria de saber se existe algo mais
automatizado.
Obs: O código acima só será reproduzível se for criado os vetores “Dia” e
“Mes” (que eu não fiz no R)
Att,
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20121014/8af0a5a4/attachment.html>
Mais detalhes sobre a lista de discussão R-br