簡體   English   中英

將多個文件讀入R

[英]Reading multiple files into R

我有一個包含365個tif圖像的目錄。 使用R,我需要讀入它們,然后在它們上使用新的投影,然后將它們寫為tif文件。 基本上,我有一個充滿圖像的文件,我需要讀入它們,對它們進行某種處理,然后將它們發送到另一個文件位置。

我到目前為止所擁有的是

newproj <- '+init=epsg:4326 +proj=longlat +ellps=WGS84 +datum=WGS84     
+no_defs +towgs84=0,0,0'

x <- dir(path='c:/users/JDD/desktop/process', pattern='.tif')

for(i in 1:length(x)){
temp_i <- raster(x[i])
temp_i <- projectRaster(temp_i, crs=newproj)
writeRaster(temp_i, '2013_i.tif', GTiff)

}

我知道通常會在GIS網站上詢問使用柵格的問題,但是我的問題是編碼,所以我希望在這里很好。 任何建議都很好。 謝謝!

一種方法是創建一個函數並遍歷工作目錄中的所有文件。

change.proj <- function(x) {
   require(rgdal)
   temp <- raster(x)
   temp <- spTransform(x, crs=CRS(newproj))
   writeRaster(temp, paste0("new",x), GTiff)
}

setwd("your folder with all the tif files")
files = list.files(pattern="*.tif")
lapply(files, function(x) change.proj(x))

我認為rgdal包中有一個名為spTransform的函數也可以解決這個問題。 我不熟悉projectRaster函數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM