adababitatパッケージの位置データフォーマット

私はこの形式のファイルを持っています:

ASCII形式

最初の行は次のようになります。

ncols 1440
nrows 720
xllcorner -180.0
yllcorner -90
cellsize 0.25
NODATA_value -9999

基本的に私は、x方向(経度)に1440個のタイル、y方向に(緯度)720個のタイルを持つ世界を持っています。それぞれの「タイル」は0.25度の長さの正方形です。私はxllcornerとyllcornerが正しいと思います。私はRのようにこのマップを描くことができます:

library("adehabitat")
bio1 <- import.asc("D:/ENFA/data.asc")
maps <- as.kasc(list(data = bio1))
image(maps, col = cm.colors(256), clfac = list(Aspect = cl))

地図は上手く見えます。

私はadehabitatパッケージを使っていくつかの生態学的ニッチファクター分析(ENFA)を行いたいと思います。基本的に私はそれらを今度は経度と緯度として持っていますが、「タイルインデックス」として生成することもできます(たとえば、左下に-90と-180の緯度があるので、 'タイルインデックス'は0、 )。正しい位置データ形式はどれですか?私はこのようなENFAコードを使用します:

locs <- read.table("D:/ENFA/Locs.txt", header = TRUE, sep="\t")
dataenfa1 <- data2enfa(maps, locs)
pc <- dudi.pca(dataenfa1$tab, scannf = FALSE)
enfa1 <- enfa(pc, dataenfa1$pr,scannf = FALSE)
hist(enfa1)

コメントしていただければ幸いです。前もって感謝します。

2

2 答え

あなたの座標を緯度経度形式にする問題は、地球上のほとんどの場所で経度の度合が緯度と異なることです。これは、ENFAをある方向に誇張することによってENFAを歪ませる可能性があります。

特にあなたのデータが比較的狭い範囲にある場合は、座標をW/E x軸とS/N y軸に沿ってメートルで再表現することをお勧めします。あなたのすべてのポイントが単一の UTMゾーン内にある場合は、 > rgdal パッケージの project()を使用して、 R

1つの例があります。ここから

library(rgdal)

# Make a two-column matrix, col1 = long, col2 = lat
xy <- cbind(c(118, 119), c(10, 50))
# Convert it to UTM coordinates (in units of meters)
project(xy, "+proj=utm +zone=51 ellps=WGS84")
          [,1]    [,2]
[1,] -48636.65 1109577
[2,] 213372.05 5546301 

空間データの操作方法に関する詳細は、Bivand、Pebesma、およびGomez-Rubioの「Rによる応用空間データ解析」を参照してください。より具体的な支援が必要な場合は、 R-sig-Geoメーリングリスト

お役に立てれば。

7
追加された
ありがとうジョシュ。この問題の1つの問題は、データが世界中のどこからでも(すなわち、60 UTM経度ゾーンのうちの1つ以上のものから)得られることである。それについて何をすべきかわからない...
追加された 著者 cs0815,
ありがとう、私はこれを見ていきます。
追加された 著者 cs0815,
@ジョシュ - あなたはこれを修正してください: "経度は経度とは異なる長さです"私は本当にこの歪みのものを理解したいと思います。ありがとう!
追加された 著者 cs0815,
あるいは、自分で変換を行うこともできます。緯度は111kmです。 lat がラジアンで表される場合、経度は cos(lat)* 111 kmに非常に近いです。度のラットの場合は、代わりに cos((2 * pi)/ 360)* lat)* 111 を使用してください。これをいくつかの緯度で試してみて、[ en.wikipedia.org/ wiki /経度#Degree_length] {このWikipediaの記事}を参照してください。これは、データセットが多くの緯度にまたがっていない限り(または極の近くの広い領域を含む)機能するはずです。これが便利な場合は、メインの応答に追加します。
追加された 著者 Josh O'Brien,
@csetzkorn - それをキャッチするためにありがとう。基本的な問題は、赤道から遠ざかるにつれて、学位の長さが短くなることです。ポールでは、いくつかのステップで360度歩くことができます。赤道では、同じことをするには4万kmの旅が必要です。
追加された 著者 Josh O'Brien,
本のリンクをありがとう。私はこの分野にもっと慣れることを意味してきました。
追加された 著者 John Colby,

たぶんあなたは座標を

GHAM(グローバル、階層、英数字、モートンエンコード)

任意の精度のセルによってグローブを表します(細かいか粗いかのように)ので、任意の緯度/経度はソート可能な単一の英数字アドレスを持ちます。

GHAM:ソートに適したコンパクトなグローバルジオコードの要約は以下の通りです。 Duncan Agnew

GHAMコードは、   彼らの位置に。それは、等面積セルのためのアドレスを定義する   一定の緯度と経度で、任意の細かい精度で。   セルコードは、モートン順序を再帰的に適用することによって定義される   16×16のグリッドに分割し、結果の数値を   文字 - 数字の組。意志的にラベル付けされた点のリストの字句的な並べ替え   近くに近所の人々(通常)を近づける。さまざまなテスト   グローバルデータセットは、ほとんどの場合、実際の最も近い点が   リストの50%近くにあり、5つの項目のうち80%が   時間。

ソースコードは IAMG リポジトリですが、私は彼がそれを提供すると確信しています。

1
追加された
興味深いですが、私はそれがこの文脈に適用可能であるとは思わない
追加された 著者 cs0815,