Rでラスターデータを操作したいのですが、ArcMapからラスターデータセットをエクスポートできません。「データのエクスポート」/ GRIDを使用して、*。aux拡張子の付いたファイルを取得します。必要なのは* .grdです。
誰かが私を手伝ってくれる?
Rでラスターデータを操作したいのですが、ArcMapからラスターデータセットをエクスポートできません。「データのエクスポート」/ GRIDを使用して、*。aux拡張子の付いたファイルを取得します。必要なのは* .grdです。
誰かが私を手伝ってくれる?
回答:
答えは、エクスポートする必要がないためです。ラスターパッケージでArc *グリッドデータを直接読み取ることができます(ライブラリrgdalが利用可能な場合)。また、エクスポートする場合は、ASCIIを使用しないことをお勧めします(GTiffなどを使用)。
library(raster)
library(rgdal)
#For an arc/grid (albem_s1 is the folder!):
r <- raster("G:/USGS/DEM/7_5min/VA/albem_s1")
#For a geotiff
r <- raster("G:/USGS/DEM/7_5min/VA/albem_s1.tif")
読み取りのためのより便利なソリューションは、このスレッドの他の場所で @RobertHによって提供されます。ここで説明するのと同じアプローチを使用して、Arc *グリッドデータセットを直接読み取ることができますraster
。グリッドデータファイルが存在するフォルダーをコマンドで参照するだけです。
Arc *では、Raster to ASCII
ツール(にありますConversion Tools|From Raster
)を使用してグリッドをASCII形式でエクスポートします。
でR
、raster
およびrgdal
パッケージをロードしraster
、次のように関数を使用してラスターを読み取ります。
r <- raster("G:/USGS/DEM/7_5min/VA/albem_s1.txt")
plot(r)
.grdバージョンを作成するには、次のように使用しますwriteRaster
。
writeRaster(r, "G:/USGS/DEM/7_5min/VA/albem_s1.grd")
コンソール応答は、次のように、出力の.grd部分の内容を記述します(データは.griファイルにあります)。
class : RasterLayer
filename : G:/USGS/DEM/7_5min/VA/albem_s1.grd
nrow : 1415
ncol : 1133
ncell : 1603195
min value : 70
max value : 960
projection : +proj=utm +zone=17 +ellps=GRS80 +datum=NAD83 +units=m +no_defs +towgs84=0,0,0
xmin : 686280
xmax : 720270
ymin : 4179990
ymax : 4222440
xres : 30
yres : 30
*.asc
?どちらも機能すると思い*.txt
ますが、ArcGISを使用してファイルを開こうとすると問題が発生する可能性があります。
.txt
でなく出力することを選択する理由を知りました.asc
。直感に反するかもしれないと思った。
ESRI GRIDファイルに拡張子が.grdの単一のファイルがあるようには見えません。代わりに、ArcMapが1つのファイルとして認識するマルチフォルダー/マルチファイル形式のように見えます(シェープファイルとArcInfoカバレッジのしくみに似ています)。いずれにしても、.auxファイルは、ラスタ自体に格納できない情報を格納するGRID形式のヘルパーファイルです。それについて話すいくつかのリンクはここにあります:
補助ファイルについて http://webhelp.esri.com/arcgiSDEsktop/9.3/index.cfm?TopicName=About_auxiliary_files
.auxファイルはいつ作成されますか? http://support.esri.com/en/knowledgebase/techarticles/detail/29821