在R中打开光栅!还有一些统计运算

在R中打开光栅!还有一些统计运算,r,gis,aggregate,raster,R,Gis,Aggregate,Raster,我想打开光栅文件(ASCII或TIFF格式),聚合它们的单元格,并在此操作后计算此新光栅文件和另一个光栅文件中的值之间的相关性。不幸的是,我不知道我的命令有什么错误-我收到一条错误消息: x <- GDAL.open('~/Pulpit/dods/karol/TVDI 113_121/TVDI_kamp_evi_TRANSF.asc') x要读取(打开)光栅,一种方法是使用readGDAL: library(rgdal) r <- readGDAL("~/myhome/thisd

我想打开光栅文件(ASCII或TIFF格式),聚合它们的单元格,并在此操作后计算此新光栅文件和另一个光栅文件中的值之间的相关性。不幸的是,我不知道我的命令有什么错误-我收到一条错误消息:

x <- GDAL.open('~/Pulpit/dods/karol/TVDI 113_121/TVDI_kamp_evi_TRANSF.asc') 
x要读取(打开)光栅,一种方法是使用
readGDAL

library(rgdal)
r <- readGDAL("~/myhome/thisdir/IhaveaFile.asc")
库(rgdal)

r如果在获取文件名时遇到问题,可以执行以下操作:

my_asc_files = dir("../somepath", pattern="*.asc", recursive=T, full.names=T)
files_I_want = my_asc_files[c(1,12,32,33)]
然后你可以像这样加载你的文件

library(raster)
my_rasters = lapply(files_I_want, raster)
然后你可以这样做:

pairs(my_rasters) 
这是:

for(i in 1:length(my_rasters)) 
  for(j in i:length(my_rasters))   
    if(i != j) {
      df = na.omit(data.frame(values(my_rasters[[i]]), values(my_rasters[[j]])))
      cor(df[,1], df[,2])
    }

不过,如果光栅太大,无法同时在内存中容纳两个光栅,则会遇到问题。如果没有更好的问题,就很难给您提供更好的建议。

从基本知识开始,使用您自己的本地路径将已安装(系统)文件中的“r”重新分配到文件可能是可以的,但无法读取、未格式化且完全不清楚的代码则不行。请考虑一下你的问题,花点时间思考一下,思考一下有人可能需要做些什么才能理解你的问题。IMO,这里有两个问题:1)我如何将GISy光栅数据读入一个值得尊敬的R对象,2)我如何从值得尊敬的R对象中合理地聚合。我认为2)作为这个问题的一部分并不值得,因为还有很多其他的资源。1) 可以说是更难了解的。也许试试
fn r我不知道为什么会出现tnis错误。。。也许在GRASS GIS下,这种操作要容易得多(正如我所知,在Simpler QGIS中没有聚合这样的函数)。您所有的问题都源于无法定位或读取文件。您是否尝试过这里关于查找文件的各种建议?您是否尝试过删除路径名中的空格?需要空格(文件夹名称包含空格)确定-我可以打开光栅文件(使用rgdal),但不幸的是,我无法将其用于聚合函数:getS3method中的错误(gen,cl,TRUE):对于类“derivedDefaultMethod”的此对象,没有名称“methods”的槽我应该如何转换它(我使用GDAL.open打开它)还是简单地:s