2

ラスターファイル(ASCIIまたはTIFF形式)を開き、それらのセルを集約し、この操作の後、この新しいラスターファイルと別のラスターファイルの値の間の相関をカウントしたいと思います。残念ながら、コマンドの何が問題なのかわかりません。エラーメッセージが表示されます。

x <- GDAL.open('~/Pulpit/dods/karol/TVDI 113_121/TVDI_kamp_evi_TRANSF.asc') 

CPLエラー4: `〜/ Pulpit / dods / karol / TVDI 113_121 / TVDI_kamp_evi_TRANSF.asc'はファイルシステムに存在せず、サポートされているデータセット名として認識されません。

.local(.Object、...)のエラー: `〜/ Pulpit / dods / karol / TVDI 113_121 / TVDI_kamp_evi_TRANSF.asc'はファイルシステムに存在せず、サポートされているデータセット名として認識されません。

4

2 に答える 2

6

ファイル名の取得に問題がある場合は、次のようにします。

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])
    }

ただし、ラスターが大きすぎて2つを同時にメモリに保持できない場合は、問題が発生します。より良い質問がなければ、より良いアドバイスを与えるのは難しいでしょう。

于 2011-04-29T21:48:43.837 に答える
5

ラスターを読み取る(開く)には、次の方法を使用しますreadGDAL

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

これは私の個人的な好みであり、他の方法で使用する唯一の理由、GDAL.openまたはraster問題のデータセットを処理するためのRAM(+ abit)がマシンにない場合です。

于 2011-04-29T18:37:54.770 に答える