2017-04-11 4 views
0

私が今まで持っていた問題で私を助けてくれることを願っています。私はこのチュートリアルを使用したMaxEntのバイアスファイルを作成する必要があります:https://scottrinnan.wordpress.com/2015/08/31/how-to-construct-a-bias-file-with-r-for-use-in-maxent-modeling/そしてそれを自分の状況に変更しました。しかし、私は今停止しています...Rでのカーネル密度関数は、xとyの解像度が等しくないことを示します

kde2d関数を使用して2次元カーネル密度推定を作成し、それをラスタに変換する必要があります。ただし、作成されるラスタはxとyの解像度が異なります。これは、不等xとyの解像度を受け入れないMaxEntで使う必要があるので、問題です。

これは私がしたものである:biasrasterの

biasraster <- raster("file.tif") #load raster with all the occurrences 
presences <-which(values(biasraster)==1) 
pres.locs<- coordinates(biasraster)[presences,] 
dens <-kde2d(pres.locs[,1],pres.locs[,2],n=c(nrow(biasraster),ncol(biasraster))) #2d kernel density function on the biasraster 
dens.ras<-raster(dens) #create raster from kde2d function 

元の解像度は、xとyの両方のために0.00833333であるが、dens.rasための解像度は0.0104052に変更されている、0.00833333(x、y)は( yの解像度が正しいです)。

おそらくこの質問からわかるように、私はコーディング(r)の場合には合計のnoobです。私は約1週間何をやろうとしているのか理解しようとしていましたが、うまくいく答えが見つからないので、ここの誰かが私を助けてくれることを願っています。

+0

例ファイルがないと、索引付けによって方向の1つの範囲が縮小され、異なる解像度になることが推測できます。おそらく 'MASS :: kde2d'に' h = '引数を指定しようとします。 – nya

答えて

0

私は同じ問題がありました。 - climdat

の同じ解像度にバイアスファイル#make(dens.ras、climdat、方法= "バイリニア")を再サンプリングが、additionaly、私も必要

dens.ras <を:私は使用してそれを解決できますカットdens.ras。

densmod < -crop(dens.ras、ある程度(climdat))の追加手順で

は、私のバイアスファイルがうまく働きました。

+0

はい、これは完璧に機能しました!どうもありがとうございます! – Nadja

関連する問題