タグ付けされた質問 「rgdal」

2
Rを使用してファイルジオデータベースのフィーチャクラスを読み取りますか?
エクスポートされたシェープファイルとして2GBを超えるジオデータベースに含まれる機能があります。Rで抽出関数を実行して、ポリゴンをラスターファイルのデータに関連付ける必要があります。機能をテーブルとしてエクスポートすることは解決策ではありません。Esriファイルジオデータベース内に含まれるフィーチャクラスを読み取るにはどうすればよいですか?

5
Rを使用してESRIファイルジオデータベース(* .gdb)からテーブルを読み取る
ESRIファイルジオデータベースからRに直接テーブルを読み取ろうとしています。サンプルのデータファイルは、ここからダウンロードできます。データベースには、ポイントフィーチャクラス(Zone9_2014_01_Broadcast)と2つのリンクテーブル(Zone9_2014_01_VesselおよびZone9_2014_01_Voyage)が含まれています。パッケージreadOGRからRのシェープファイルを読むことができrgeosます: library(rgeos) library(downloader) download("https://coast.noaa.gov/htdata/CMSP/AISDataHandler/2014/01/Zone9_2014_01.zip", dest="Zone9_2014_01.zip", mode="wb") unzip("Zone9_2014_01.zip", exdir = ".") # Not Run (loads large point file) # broadcast <- readOGR(dsn = "Zone9_2014_01.gdb", layer = "Zone9_2014_01_Broadcast") ogrListLayersまたはを使用すると、2つのリンクテーブルも表示されますogrInfo。ただし、ogrInfo警告が表示されます。 警告メッセージ:ogrInfo( "Zone9_2014_01.gdb"、layer = "Zone9_2014_01_Vessel"):ogrInfo:すべての機能がNULL またreadOGR、テーブルで使用しようとすると、エラーが発生します。 vessel <- readOGR(dsn = "Zone9_2014_01.gdb", layer = "Zone9_2014_01_Vessel") readOGR(dsn = "Zone9_2014_01.gdb"、layer = "Zone9_2014_01_Vessel")のエラー:機能が見つかりませんさらに:警告メッセージ:ogrInfo(dsn = dsn、layer = layer、encoding = …

3
ポイントがポリゴンシェープファイル内にあるかどうかを確認する
Zillowには、米国の主要都市のさまざまな地域のシェープファイルのセットがあります。Rを使用して、特定の近隣に特定の建物が存在するかどうかを確認したかったのです。 library(rgeos) library(sp) library(rgdal) df <- data.frame(Latitude =c(47.591351, 47.62212,47.595152), Longitude = c(-122.332271,-122.353985,-122.331639), names = c("Safeco Field", "Key Arena", "Century Link")) coordinates(df) <- ~ Latitude + Longitude wa.map <- readOGR("ZillowNeighborhoods-WA.shp", layer="ZillowNeighborhoods-WA") sodo <- wa.map[wa.map$CITY == "Seattle" & wa.map$NAME == "Industrial District", ] 問題なくプロットできます plot(sodo) points(df$Latitude ~ df$Longitude, col = "red", cex …
19 r  rgdal  zillow 

2
Rで交差領域を抽出する
2つのポリゴンがあります。1つにはフィールド(X、Y、Z)が含まれ、もう1つには土壌タイプ(A、B、C、D)が含まれます。すべてのフィールドのどの領域にどのタイプの土壌が含まれているかを知りたい。私は次を試しました: library(rgdal) library(rgeos) Field<-readOGR("./","Field") Soil<-readOGR("./","Soil") Results<-gIntersects(Soil,Field,byid=TRUE) rownames(Results)<-Field@data$FieldName colnames(Results)<-Soil@data$SoilType > Results A B C D Z TRUE FALSE FALSE FALSE Y FALSE TRUE TRUE FALSE X TRUE TRUE TRUE TRUE どのフィールドにどの土壌タイプが含まれているかを教えてくれて、良い結果を達成しました。ただし、代わりにどのように領域を取得しますか?

1
Rで指定されたラスターの範囲と境界のポリゴンを作成します
2つのポリゴンを作成します。 1つは、ラスターの長方形の範囲です。r <- raster("band5.tif") e <- extent(r) plot(e)私はこれを使用してラスターの範囲を取得できることを知っ ています: 以下に示すように、ラスターの境界のポリゴンを1つ作成するにはどうすればよいですか? これは私のラスターのようです:
13 raster  r  rgdal 

2
gSimplifyによって単純化された空間ポリゴンを持つwriteOGR
gSimplifyシェープファイルのジオメトリを単純化するために(rgeosパッケージ)を使用しています。この機能は正常に機能しますが、新しいシェープファイルに出力を書き込めなくなりました。私はいくつかの方法を試しました: writeOGR(simplyshape, file, driver="ESRI Shapefile", layer='test') 私は得る objはSpatialPointsDataFrame、SpatialLinesDataFrameまたはSpatialPolygonsDataFrameでなければなりません そして: writePolyShape(simplyshape, file) 私は得る: エラー:is(x、 "SpatialPolygonsDataFrame")はTRUEではありません
12 shapefile  r  simplify  rgdal 

2
R-境界ボックスを作成し、Polygonクラスに変換してプロットする
とが NE lat lngありSW lat lngます。私の目標は単純です。RStudioを使用しており、上記の2つの緯度と経度から境界ボックスを作成し、ポリゴンを生成して、正方形ポリゴンにランダムポイントを追加します。data.frameにインポートできるcsvファイルにNELat / LngとSW-Lat / Lngがあります。 始めるには少しガイダンスが必要です。R言語は非常に新しいもので、これまで慣れていたものとはまったく異なります。 これまでのところ私はこれを持っています: coords = cbind(78.46801, 19.53407) coordsmax = cbind(78.83157, 19.74557 ) sp = SpatialPoints(coordsmax) sp2 = SpatialPoints(coords) r1 = rbind(coords, coordsmax[1, ]) # join P1 = Polygon(r1) Ps1 = Polygons(list(P1), ID = "a") plot(Ps1) 他の場所でいくつかの例をみましたが、4つの角のポリゴンをプロットできません。
11 r  rgdal 

1
RでwriteOGR()を使用して複数のレイヤーをGeoPackageに書き込みますか?
Rの同じGeoPackageに複数のレイヤーを書き込もうとしていますが、エラーが発生しますCreation of output file failed。RGDALを使用した.gpkgファイルの読み取りと書き込みのドキュメントを検索してみました。たとえば、writeOGR()実際に複数のレイヤーをサポートしているかどうかを調べたところ、ほとんど成功しませんでした。これは可能であれば、どのように行うのですか?最小限の作業例: library(sp) library(maptools) library(rgdal) data(wrld_simpl) norway <- wrld_simpl[wrld_simpl$NAME == "Norway", ] sweden <- wrld_simpl[wrld_simpl$NAME == "Sweden", ] file <- tempfile("scandinavia", fileext = c(".gpkg")) writeOGR(norway, dsn = file, layer = "norway", driver = "GPKG") writeOGR(sweden, dsn = file, layer = "sweden", driver = "GPKG") ogrListLayers(file) トリックを実行するogr2ogr シェルコマンド(ヒントmdsumner)があるようですが、これをR関数でラップできます。ただし、sfパッケージのwriteOGR()やst_write()にこれが組み込まれているとlayer_options便利です。GDALに依存していると思いますが、GDALの …
11 gdal  r  rgdal  geopackage  sf 

3
Esriシェープファイルの一部のみをRに読み込みます
非常に大きなESRIシェープファイル(> 8000ポリゴン、.shpファイルは> 32MB)があります。これをWindows 7のRに読み込みます。 私はrgdalとreadOGR()に精通しています。ただし、このサイズのシェープファイルでは、シェープファイル全体をメモリに読み込むのは非常に時間がかかります。さらに、シェープファイルに含まれる8,000のいくつかのクラスター化されたポリゴン(<100)のみに関心があります。これを実行する必要があるプロセスは非常に反復的です。つまり、シェープファイルを何度もロードする必要があるため、現在は非常に低速です。 したがって、プロセスを加速するために、シェープファイルの一部のみを読み取ることができるかどうか疑問に思っています。このような大量のデータを読み込んで、そのほとんどを破棄するのは実際的ではないようです。
9 shapefile  r  rgdal 

1
Rでベクターをラスターに高速処理
Rでベクターをラスターに変換しています。ただし、プロセスが長すぎます。より速く実行するために、スクリプトをマルチスレッドまたはGPU処理に入れる可能性はありますか? ラスタライズされたベクトルへの私のスクリプト。 r.raster = raster() extent(r.raster) = extent(setor) #definindo o extent do raster res(r.raster) = 10 #definindo o tamanho do pixel setor.r = rasterize(setor, r.raster, 'dens_imov') r.raster クラス:RasterLayer寸法:9636、11476、110582736(nrow、ncol、ncell)解像度:10、10(x、y)範囲:505755、620515、8555532、8651792(xmin、xmax、ymin、ymax)座標。ref。:+ proj = longlat + datum = WGS84 + ellps = WGS84 + towgs84 = 0,0,0 セッター クラス:SpatialPolygonsDataFrame機能:5419範囲:505755、620515.4、8555429、8651792(xmin、xmax、ymin、ymax)座標。ref。:+ proj = utm + zone …

2
Rでラスターを再投影すると、投影された点が有限ではないという警告が表示されますか?
1.質問 RのラスターパッケージでprojectRaster()関数を使用して警告が発生しました。完全に再現可能な例を以下に貼り付けます。 Warning message: In rgdal::rawTransform(projto_int, projfrom, nrow(xy), xy[, 1], : 33940 projected point(s) not finite 私の質問は次のとおりです。このデータは、地上データで作業している場合に修正する必要がある問題ですか?つまり、データは「失われた」ということです。もしそうなら、これは私にとって大きな問題になるでしょう。もしそうなら、私がそれを修正できる方法があるかどうか知っていますか? 私はこの問題の解決策をオンラインで検索したところ、ここ、ここ、およびここにいくつかの言及が見つかりましたが、この問題に対する適切な答えを提供するものはないと思います。 2.ラスターライブラリを読み込む library(raster) 3.まず、各グリッドセルに定数を使用して、世界の(長緯度)マップを作成します 各グリッドセルに定数を配置して、警告がデータに影響する可能性がある場合の問題を診断できるかどうかを確認しています。 rastertest.longlat<-raster(ncol=360, nrow=180) values(rastertest.longlat)<-c(rep(1,n=180*360)) 4.(長緯度)マップを等面積グリッドに再投影すると、警告メッセージが表示されます rastertest.eck4<-projectRaster(rastertest.longlat, res=c(100000,100000), crs="+proj=eck4",method="ngb", over=T) Warning message: In rgdal::rawTransform(projto_int, projfrom, nrow(xy), xy[, 1], : 33940 projected point(s) not finite このメッセージは基本的に、一部のグリッドセルで再投影が失敗したことを示していると思います。 5.しかし、2つのマップをプロットした場合、この警告はデータに問題を引き起こすようには見えません つまり、プロットされたデータに白いギャップはありません。私の推測では、失われた細胞は非地球上の細胞であり、世界の最上部と最果てです。何か案は? par(mfrow=c(2,1)) plot(rastertest.longlat, col="blue") …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.