[R-br] Loop varrendo quantidade enorme de arquivos
Jônatan
jdtatsch em gmail.com
Quinta Maio 3 02:24:01 BRT 2012
Thiago,
tente usar a funcao zApply do proprio pacote raster.
## datas de 8 em 8 dias, extraidas dos nomes dos arquivos tiff
t8d <- seq(as.Date("2000-01-01"), length.out=100, by="8 days")
## stack dos arquivos tiff
s <- stack(list.files(pattern="tiff$"))
## definindo variavel z como t8d
s <- setZ(s, t8d, name="8day")
require(zoo)
res <- zApply(s, by=as.yearmon, fun=mean, name="meses")
2012/5/2 Thiago Veloso <thi_veloso em yahoo.com.br>
> Boa noite pessoal,
>
> Preciso de ajuda para fazer um loop que percorra uma lista enorme de
> arquivos.
>
> Organizei uma série (+50GB) de imagens de satélite que está organizada em
> anos (2001 a 2011) e, por ano, a cada oito dias (julianos).
>
> lai200101.tif
> lai200109.tif
> lai200117.tif
> lai200125.tif
> .
> .
> .
> lai2011361.tif
>
> onde a nomenclatura segue o padrão: lai{ano}{diajuliano}.tif. Percebam
> que o incremento entre os dias é sempre oito.
>
> Preciso fazer duas operações nesse banco de dados:
>
> 1) um loop para abrir cada um dos arquivos, nomeando a variável com o ano
> e mês, e multiplicar a mesma por 0.001. Algo assim:
>
> library(raster)
> lai{ano}{diajuliano}<-raster('lai{ano}{diajuliano}.tif') #carregando imagem
> lai{ano}{diajuliano}<-lai{ano}{diajuliano}*0.001 #calibrando imagem
>
> 2) Ao longo de todos os arquivos, somar cada quatro para produzir um mês
> de dados, por exemplo:
> lai_jan_2001 <- lai200101.tif + lai200109.tif + lai200117.tif +
> lai200125.tif
> lai_feb_2001 <- lai200133.tif + lai200141.tif + lai200149.tif +
> lai200157.tif
> .
> .
> .
> lai_dec_2011 <- lai2011337.tif + lai2011345.tif + lai2011353.tif +
> lai2011361.tif
>
> Um verdadeiro desafio de programação, concordam? Alguém pode me dar uma
> ideia de como começar?
>
> Agradece desde já,
> Thiago.
> _______________________________________________
> 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.
>
--
#------------------------------------------------------------------------------#
# Jônatan Dupont Tatsch
#
# Climate and Biosphere Laboratory
#
# Department of Atmospheric Sciences #
# Institute of Astronomy, Geophysics and Atmospheric Sciences #
# University of São Paulo
#
# Rua do Matão, 1226
#
# Cid. Universitária, São Paulo, SP, Brazil, CEP: 05508-090 #
# Phone:+55 11 3091-4772, Fax:+55 11 3091-4714 #
# http://jonatandupont.weebly.com/index.html #
#------------------------------------------------------------------------------#
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20120503/0df17e68/attachment.html>
Mais detalhes sobre a lista de discussão R-br