如何在 R 中控制光栅文件的大小
Posted
技术标签:
【中文标题】如何在 R 中控制光栅文件的大小【英文标题】:How to control raster file sizes in R 【发布时间】:2017-12-01 09:29:08 【问题描述】:当我将我的栅格(网格化气候数据)从一个投影重新投影到另一个时,文件大小会爆炸。你知道有什么方法可以控制这个吗? 这是一个例子
library(raster)
## reading and raster files to be reprojected###
setwd ("E:/PhD BOKU/DATA/CLIMATE_EU/Normal_1961-1990_Bioclimatic_1km")
clim <- list.files(pattern =".asc", full.names=F)
s<- stack(clim)
## projectingraster to geographic projection might
newproj <- CRS("+proj=longlat +ellps=WGS84 +towgs84=0,0,0,0,0,0,0 +no_defs")
ClimEU_WGS84 <- projectRaster(s, crs= newproj,res= 0.008333334)
#### writing the newly reprojected rasters into another folder
setwd("E:/PhD BOKU/DATA/CLIMATE_EU/Normal_1961-1990_Bioclimatic_1km_WGS84")
writeRaster(ClimEU_WGS84,filename=names(ClimEU_WGS84), bylayer=TRUE,format="ascii",overwrite=T)
【问题讨论】:
另一种使文件更小的方法是四舍五入并保存为整数(参见?dataType
。
比下面的答案+1好
【参考方案1】:
有不同的技巧,但到目前为止,最重要的是:
-- 请勿使用 ASCII 格式存储大型栅格!
例如使用 GeoTIFF。该格式具有压缩选项。见 ?writeRaster
【讨论】:
以上是关于如何在 R 中控制光栅文件的大小的主要内容,如果未能解决你的问题,请参考以下文章
如何使 R 的“光栅”包区分 GeoTIFF 中的正旋转矩阵和负旋转矩阵?