私の質問は、ポイントの位置にあるラスターから値を抽出することです。関数抽出を使用すると、これは非常に簡単です。関数は、ポイント内のすべての変数の値を持つデータフレームを提供します。そのデータフレームに各ポイントの座標が必要です。どうすればそれを実現できますか?Rに、ラスタから値を抽出するときに、ロケーションポイントの列も追加すると言うことはできますか。
これは私の手順です:
presencias=read.table("c:/SDM_R/presencias/P_lentiscus_pres.csv",header=TRUE,sep=";")
lista_variables <-list.files(path="Variables_modelizacion/solo_ascii",pattern='*.asc',full.names=TRUE)
variables <- stack(lista_variables)
variables_presencia<-extract(variables, presencias)
結果は次のようになります。
> bio1 bio12 bio18 bio2 bio4
> 90 875 165 95 4886
> 115 1085 158 83 4075
> 135 1153 153 67 3402
> 85 1026 137 99 5203
> 96 667 128 108 5823
> 98 531 109 113 6305
> 132 450 63 123 6598
> 132 569 104 106 5963
> 95 814 196 98 5571
> 146 474 39 114 6603
ただし、座標データを含む列がさらに2つ必要です(ただし、場所テーブルを抽出するcsvの他の列も可能です)。
ありがとうございます。
presencias
か?
cbind(coordinates(presencias), variables_presencia)
?その後、を使用してSPDFに変換しcoordinates(result) <- ~ X + Y
、空間オブジェクト用に設計された多数のメソッドを再び使用できます。