大きなGTFSフィードから小さな領域を抽出する方法は?


11

大きなGTFSフィードから小さな領域を抽出することをサポートするツールはありますか?GoogleのTransitfeedライブラリには、マージツールは含まれていますが、抽出/クリップツールは含まれていません。私が見つけた他のライブラリは、データの読み取りとプロットのみが可能ですが、操作はサポートしていません。

背景情報:Transitfeed Feedvalidatorには、GTFSファイルに関する多くのエラーが表示されます。関心のある地域を抽出して、地域の品質を評価したい。


Twitterの推奨事項は、GTFSリーダーとライターの両方を備えたFMEを示しています。私の簡単なワークフローは、GTFSリーダー(左下)、Shapefileリーダー(左上の関心領域のポリゴン)、クリッパー、および出力用のGTFSライター(現在のところストップとシェープファイルのみを書き込みますが、最終的にはすべてのファイルが必要です):

ここに画像の説明を入力してください

これまでの問題は、出力シェイプのコンテンツ(オレンジポイント)に、関心のある黄色の領域内にあるすべての入力ポイント(緑)が含まれていないことです。

ここに画像の説明を入力してください

(データソース:https : //transitfeeds.com/p/helsinki-regional-transport/735/latest/download


[集計の作成] = [いいえ]を使用すると、クリップされた図形は完全に見えます

ここに画像の説明を入力してください

しかし、停止は間違いなくありません

ここに画像の説明を入力してください


上記の例で使用した形状ファイルとワークスペースを共有することは可能ですか?GTFSデータ自体を共有することはできません。
ケン・ブラッグ

ワークスペースの赤い数字は、クリップできなかった機能を示しています。それをダブルクリックすると、データインスペクターでそれらが開き、それらが何であるかを見ることができます。私はそれらが幾何学のない特徴であると推測しています。
ケン・ブラッグ

はい、私が知る限り、これらはすべて非ジオメトリファイルの機能です。
暗闇

回答:


6

これはFME 2016で可能になります。集約をGTFSに書き込むことができないため、クリップされたフィーチャが複数のピースになったときにFMEが集約を作成しないようにするには、クリッパーの設定が必要です。私がテストしたワークスペースはここにある: https://www.dropbox.com/s/b02hd7shefybtmw/gtfs2gtfs.fmw?dl=0 ここヘルシンキのサンプルデータに基づいて: https://t.co/wAZHmUS5HN ここに画像の説明を入力してください


ありがとう、私はオフィスでそれを試してみる必要があります。ところで、それ自体が座標を含まないGTFSファイル(たとえば、routes.txtやtrips.txt)をクリップするのに十分な「ブラックマジック」/ロジックはありますか?
暗闇

非空間データ属性は、公式リファレンスdeveloper.google.com/transit/gtfs/referenceのフィーチャーマージャーまたはジョイナーと結合できますが、すべてのヘルシンキデータが入力されるわけではないため、結合は完全には機能しません。
マッパーズ

はい。@ Mapperzが指摘しているように、FeatureMergerトランスフォーマーを使用して、クリップされたジオメトリを非空間フィーチャと結合する必要があります。たとえば、FeatureMergerを使用してshap_idで参加することで旅行を検索でき、service_idで旅行とマージすることでカレンダーレコードを検索できます。:私はここで、この仕事を始めてdropbox.com/s/b02hd7shefybtmw/gtfs2gtfs.fmw?dl=0
ケン・ブラッグ

1
私は問題を見て、解決策を考えます;-)ヘルシンキのサンプルデータのストップのparent_station属性にはいくつかの空白があります(仕様で許可されています) FMEで定義されているデータ型を満たしていません。整数またはヌルを強制しています。これを修正するには、AttributeManagerトランスフォーマーを使用して、属性が整数でない場合に属性をnullに設定します。ここでスクリーンショットを参照してください。screencast.com/t/dvsWfoYe
ケン・ブラッグ

2
上記が役に立たない場合は、Safe Softwareサポート(safe.com/support)を介して、これについてより密接に協力します。すべて解決したら、ここに要約を投稿できます。または、必要に応じてここで続行します。
ケン・ブラッグ

5

対象地域にあるルートを知っている場合、GTFSトランスフォーマーを使用すると、はるかに小さなGTFSを提供できます。

そうすることで、保持されているルートに含まれていないすべての旅行、形状、停車地、stop_times、カレンダーが削除されます。

route_id 1を削除してroute_id 3を保持する場合、変換ファイルは次のようになります。

{"op":"retain","match":{"file":"routes.txt","route_id":"1"}}
{"op":"remove","match":{"file":"routes.txt","route_id":"3"}}

1
理想的ではありませんが、それが最終的に利用可能な最善のソリューションになる可能性があります。説明に基づいて、Transformerは関連するすべてのファイルもフィルタリングして、保持されているルートの情報のみを含めると想定しています。
暗闇

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.