在处理栅格数据时,经常需要将栅格数据中的数据按照shapefile边界或者中心点进行提取,当数据量较大时耗时很久,且容易造成内存溢出。因此考虑通过并行的方式对栅格数据进行提取,从而保证处理速度。
NOTE:目前对栅格数据的处理以raster包为主,同时terra包也可以进行,但实测表明terra包的处理速度在非并行条件下没有优势,因此仅对并行下两包的运算速度进行对比。
软件:R
电脑配置:Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz ; 16核 32GB
计算背景:法国本土共有96个departments,现在需要提取每个departments的气温时间序列数据。气温数据来自ERA5,为nc格式,涵盖2019-01-01至2021-09-01这一时间段内每天的逐小时数据。提取方式是简单提取每个departments所覆盖的格点,计算均值作为该department的观测值,从而形成每个department的逐小时气温时间序列数据,并进行后续分析。
导入包及数据
library(terra);library(tidyverse);library(sf);library(ncdf4);library(rgdal)
library(ggplot2);library(lubridate);library(humidity);library(tsModel);library(raster)
## nc 数据
era5_t2m <-