はじめに
- Neo4jを使って鉄道の乗り換え案内(ルート検索)を作ってみます。
- この記事ではCSVインポートの仕方や、最短経路を知りたい場合のクエリーの書き方について紹介します。
データ構造
- ノードは
Station
の1種類のみで、「路線ごとの駅名」とします。路線ごとなので、東京駅なら「山手線・東京駅」「丸ノ内線・東京駅」…といった具合に複数のノードがあります。駅ナンバリングをユニークな属性とします。 - エッジは2種類あり、1つは同一路線の隣り合う駅を結ぶ
Connect
で、駅間の営業キロを示す属性distance
を持ちます。もう1つは、乗り換え駅を結ぶTransfer
で、こちらはTransferCost
という乗り換えに係るコストを示す属性を持ちます。
データの準備
- 手始めに首都圏の鉄道網の一部のデータを作ります。駅名と営業キロのデータは主にWikipediaから拝借しました。
-
対象としたのは次の路線です。駅間エッジを作成する際の列車種別は各駅とします。
- 東京メトロ(銀座線、丸ノ内線、日比谷線、東西線、千代田線、有楽町線、半蔵門線、南北線、副都心線)、都営(大江戸線、浅草線、三田線、新宿線)、JR東日本(山手線、上野東京ライン、常磐快速線、湘南新宿ライン、東海道線、武蔵野線、京葉線、埼京線、横須賀線、総武快速線、根岸線、京浜東北線、横浜線、南武線、中央・総武緩行線、中央快速線、これらのうちナンバリングがある駅)、りんかい線、ゆりかもめ
次のデータをコピーし、文字コードをUTF-8として、計2ファイルを保存します。CSVファイルはneo4jフォルダ配下の
import
へ置きます。
ノードデータ(railway_node.csv)
name,rawname,numbering
[G-01]渋谷駅,渋谷駅,G-01
[G-02]表参道駅,表参道駅,G-02
[G-03]外苑前駅,外苑前駅,G-03
[G-04]青山一丁目駅,青山一丁目駅,G-04
[G-05]赤坂見附駅,赤坂見附駅,G-05
[G-06]溜池山王駅,溜池山王駅,G-06
[G-07]虎ノ門駅,虎ノ門駅,G-07
[G-08]新橋駅,新橋駅,G-08
[G-09]銀座駅,銀座駅,G-09
[G-10]京橋駅,京橋駅,G-10
[G-11]日本橋駅,日本橋駅,G-11
[G-12]三越前駅,三越前駅,G-12
[G-13]神田駅,神田駅,G-13
[G-14]末広町駅,末広町駅,G-14
[G-15]上野広小路駅,上野広小路駅,G-15
[G-16]上野駅,上野駅,G-16
[G-17]稲荷町駅,稲荷町駅,G-17
[G-18]田原町駅,田原町駅,G-18
[G-19]浅草駅,浅草駅,G-19
[M-01]荻窪駅,荻窪駅,M-01
[M-02]南阿佐ケ谷駅,南阿佐ケ谷駅,M-02
[M-03]新高円寺駅,新高円寺駅,M-03
[M-04]東高円寺駅,東高円寺駅,M-04
[M-05]新中野駅,新中野駅,M-05
[M-06]中野坂上駅,中野坂上駅,M-06
[M-07]西新宿駅,西新宿駅,M-07
[M-08]新宿駅,新宿駅,M-08
[M-09]新宿三丁目駅,新宿三丁目駅,M-09
[M-10]新宿御苑前駅,新宿御苑前駅,M-10
[M-11]四谷三丁目駅,四谷三丁目駅,M-11
[M-12]四ツ谷駅,四ツ谷駅,M-12
[M-13]赤坂見附駅,赤坂見附駅,M-13
[M-14]国会議事堂前駅,国会議事堂前駅,M-14
[M-15]霞ケ関駅,霞ケ関駅,M-15
[M-16]銀座駅,銀座駅,M-16
[M-17]東京駅,東京駅,M-17
[M-18]大手町駅,大手町駅,M-18
[M-19]淡路町駅,淡路町駅,M-19
[M-20]御茶ノ水駅,御茶ノ水駅,M-20
[M-21]本郷三丁目駅,本郷三丁目駅,M-21
[M-22]後楽園駅,後楽園駅,M-22
[M-23]茗荷谷駅,茗荷谷駅,M-23
[M-24]新大塚駅,新大塚駅,M-24
[M-25]池袋駅,池袋駅,M-25
[Mb-03]方南町駅,方南町駅,Mb-03
[Mb-04]中野富士見町駅,中野富士見町駅,Mb-04
[Mb-05]中野新橋駅,中野新橋駅,Mb-05
[H-01]中目黒駅,中目黒駅,H-01
[H-02]恵比寿駅,恵比寿駅,H-02
[H-03]広尾駅,広尾駅,H-03
[H-04]六本木駅,六本木駅,H-04
[H-05]神谷町駅,神谷町駅,H-05
[H-06]霞ケ関駅,霞ケ関駅,H-06
[H-07]日比谷駅,日比谷駅,H-07
[H-08]銀座駅,銀座駅,H-08
[H-09]東銀座駅,東銀座駅,H-09
[H-10]築地駅,築地駅,H-10
[H-11]八丁堀駅,八丁堀駅,H-11
[H-12]茅場町駅,茅場町駅,H-12
[H-13]人形町駅,人形町駅,H-13
[H-14]小伝馬町駅,小伝馬町駅,H-14
[H-15]秋葉原駅,秋葉原駅,H-15
[H-16]仲御徒町駅,仲御徒町駅,H-16
[H-17]上野駅,上野駅,H-17
[H-18]入谷駅,入谷駅,H-18
[H-19]三ノ輪駅,三ノ輪駅,H-19
[H-20]南千住駅,南千住駅,H-20
[H-21]北千住駅,北千住駅,H-21
[T-01]中野駅,中野駅,T-01
[T-02]落合駅,落合駅,T-02
[T-03]高田馬場駅,高田馬場駅,T-03
[T-04]早稲田駅,早稲田駅,T-04
[T-05]神楽坂駅,神楽坂駅,T-05
[T-06]飯田橋駅,飯田橋駅,T-06
[T-07]九段下駅,九段下駅,T-07
[T-08]竹橋駅,竹橋駅,T-08
[T-09]大手町駅,大手町駅,T-09
[T-10]日本橋駅,日本橋駅,T-10
[T-11]茅場町駅,茅場町駅,T-11
[T-12]門前仲町駅,門前仲町駅,T-12
[T-13]木場駅,木場駅,T-13
[T-14]東陽町駅,東陽町駅,T-14
[T-15]南砂町駅,南砂町駅,T-15
[T-16]西葛西駅,西葛西駅,T-16
[T-17]葛西駅,葛西駅,T-17
[T-18]浦安駅,浦安駅,T-18
[T-19]南行徳駅,南行徳駅,T-19
[T-20]行徳駅,行徳駅,T-20
[T-21]妙典駅,妙典駅,T-21
[T-22]原木中山駅,原木中山駅,T-22
[T-23]西船橋駅,西船橋駅,T-23
[C-01]代々木上原駅,代々木上原駅,C-01
[C-02]代々木公園駅,代々木公園駅,C-02
[C-03]明治神宮前駅,明治神宮前駅,C-03
[C-04]表参道駅,表参道駅,C-04
[C-05]乃木坂駅,乃木坂駅,C-05
[C-06]赤坂駅,赤坂駅,C-06
[C-07]国会議事堂前駅,国会議事堂前駅,C-07
[C-08]霞ケ関駅,霞ケ関駅,C-08
[C-09]日比谷駅,日比谷駅,C-09
[C-10]二重橋前駅,二重橋前駅,C-10
[C-11]大手町駅,大手町駅,C-11
[C-12]新御茶ノ水駅,新御茶ノ水駅,C-12
[C-13]湯島駅,湯島駅,C-13
[C-14]根津駅,根津駅,C-14
[C-15]千駄木駅,千駄木駅,C-15
[C-16]西日暮里駅,西日暮里駅,C-16
[C-17]町屋駅,町屋駅,C-17
[C-18]北千住駅,北千住駅,C-18
[C-19]綾瀬駅,綾瀬駅,C-19
[C-20]北綾瀬駅,北綾瀬駅,C-20
[Y-01]和光市駅,和光市駅,Y-01
[Y-02]地下鉄成増駅,地下鉄成増駅,Y-02
[Y-03]地下鉄赤塚駅,地下鉄赤塚駅,Y-03
[Y-04]平和台駅,平和台駅,Y-04
[Y-05]氷川台駅,氷川台駅,Y-05
[Y-06]小竹向原駅,小竹向原駅,Y-06
[Y-07]千川駅,千川駅,Y-07
[Y-08]要町駅,要町駅,Y-08
[Y-09]池袋駅,池袋駅,Y-09
[Y-10]東池袋駅,東池袋駅,Y-10
[Y-11]護国寺駅,護国寺駅,Y-11
[Y-12]江戸川橋駅,江戸川橋駅,Y-12
[Y-13]飯田橋駅,飯田橋駅,Y-13
[Y-14]市ケ谷駅,市ケ谷駅,Y-14
[Y-15]麹町駅,麹町駅,Y-15
[Y-16]永田町駅,永田町駅,Y-16
[Y-17]桜田門駅,桜田門駅,Y-17
[Y-18]有楽町駅,有楽町駅,Y-18
[Y-19]銀座一丁目駅,銀座一丁目駅,Y-19
[Y-20]新富町駅,新富町駅,Y-20
[Y-21]月島駅,月島駅,Y-21
[Y-22]豊洲駅,豊洲駅,Y-22
[Y-23]辰巳駅,辰巳駅,Y-23
[Y-24]新木場駅,新木場駅,Y-24
[Z-01]渋谷駅,渋谷駅,Z-01
[Z-02]表参道駅,表参道駅,Z-02
[Z-03]青山一丁目駅,青山一丁目駅,Z-03
[Z-04]永田町駅,永田町駅,Z-04
[Z-05]半蔵門駅,半蔵門駅,Z-05
[Z-06]九段下駅,九段下駅,Z-06
[Z-07]神保町駅,神保町駅,Z-07
[Z-08]大手町駅,大手町駅,Z-08
[Z-09]三越前駅,三越前駅,Z-09
[Z-10]水天宮前駅,水天宮前駅,Z-10
[Z-11]清澄白河駅,清澄白河駅,Z-11
[Z-12]住吉駅,住吉駅,Z-12
[Z-13]錦糸町駅,錦糸町駅,Z-13
[Z-14]押上駅,押上駅,Z-14
[N-01]目黒駅,目黒駅,N-01
[N-02]白金台駅,白金台駅,N-02
[N-03]白金高輪駅,白金高輪駅,N-03
[N-04]麻布十番駅,麻布十番駅,N-04
[N-05]六本木一丁目駅,六本木一丁目駅,N-05
[N-06]溜池山王駅,溜池山王駅,N-06
[N-07]永田町駅,永田町駅,N-07
[N-08]四ツ谷駅,四ツ谷駅,N-08
[N-09]市ケ谷駅,市ケ谷駅,N-09
[N-10]飯田橋駅,飯田橋駅,N-10
[N-11]後楽園駅,後楽園駅,N-11
[N-12]東大前駅,東大前駅,N-12
[N-13]本駒込駅,本駒込駅,N-13
[N-14]駒込駅,駒込駅,N-14
[N-15]西ケ原駅,西ケ原駅,N-15
[N-16]王子駅,王子駅,N-16
[N-17]王子神谷駅,王子神谷駅,N-17
[N-18]志茂駅,志茂駅,N-18
[N-19]赤羽岩淵駅,赤羽岩淵駅,N-19
[F-01]和光市駅,和光市駅,F-01
[F-02]地下鉄成増駅,地下鉄成増駅,F-02
[F-03]地下鉄赤塚駅,地下鉄赤塚駅,F-03
[F-04]平和台駅,平和台駅,F-04
[F-05]氷川台駅,氷川台駅,F-05
[F-06]小竹向原駅,小竹向原駅,F-06
[F-07]千川駅,千川駅,F-07
[F-08]要町駅,要町駅,F-08
[F-09]池袋駅,池袋駅,F-09
[F-10]雑司が谷駅,雑司が谷駅,F-10
[F-11]西早稲田駅,西早稲田駅,F-11
[F-12]東新宿駅,東新宿駅,F-12
[F-13]新宿三丁目駅,新宿三丁目駅,F-13
[F-14]北参道駅,北参道駅,F-14
[F-15]明治神宮前駅,明治神宮前駅,F-15
[F-16]渋谷駅,渋谷駅,F-16
[E-28]都庁前駅,都庁前駅,E-28
[E-01]新宿西口駅,新宿西口駅,E-01
[E-02]東新宿駅,東新宿駅,E-02
[E-03]若松河田駅,若松河田駅,E-03
[E-04]牛込柳町駅,牛込柳町駅,E-04
[E-05]牛込神楽坂駅,牛込神楽坂駅,E-05
[E-06]飯田橋駅,飯田橋駅,E-06
[E-07]春日駅,春日駅,E-07
[E-08]本郷三丁目駅,本郷三丁目駅,E-08
[E-09]上野御徒町駅,上野御徒町駅,E-09
[E-10]新御徒町駅,新御徒町駅,E-10
[E-11]蔵前駅,蔵前駅,E-11
[E-12]両国駅,両国駅,E-12
[E-13]森下駅,森下駅,E-13
[E-14]清澄白河駅,清澄白河駅,E-14
[E-15]門前仲町駅,門前仲町駅,E-15
[E-16]月島駅,月島駅,E-16
[E-17]勝どき駅,勝どき駅,E-17
[E-18]築地市場駅,築地市場駅,E-18
[E-19]汐留駅,汐留駅,E-19
[E-20]大門駅,大門駅,E-20
[E-21]赤羽橋駅,赤羽橋駅,E-21
[E-22]麻布十番駅,麻布十番駅,E-22
[E-23]六本木駅,六本木駅,E-23
[E-24]青山一丁目駅,青山一丁目駅,E-24
[E-25]国立競技場駅,国立競技場駅,E-25
[E-26]代々木駅,代々木駅,E-26
[E-27]新宿駅,新宿駅,E-27
[E-29]西新宿五丁目駅,西新宿五丁目駅,E-29
[E-30]中野坂上駅,中野坂上駅,E-30
[E-31]東中野駅,東中野駅,E-31
[E-32]中井駅,中井駅,E-32
[E-33]落合南長崎駅,落合南長崎駅,E-33
[E-34]新江古田駅,新江古田駅,E-34
[E-35]練馬駅,練馬駅,E-35
[E-36]豊島園駅,豊島園駅,E-36
[E-37]練馬春日町駅,練馬春日町駅,E-37
[E-38]光が丘駅,光が丘駅,E-38
[A-01]西馬込駅,西馬込駅,A-01
[A-02]馬込駅,馬込駅,A-02
[A-03]中延駅,中延駅,A-03
[A-04]戸越駅,戸越駅,A-04
[A-05]五反田駅,五反田駅,A-05
[A-06]高輪台駅,高輪台駅,A-06
[A-07]泉岳寺駅,泉岳寺駅,A-07
[A-08]三田駅,三田駅,A-08
[A-09]大門駅,大門駅,A-09
[A-10]新橋駅,新橋駅,A-10
[A-11]東銀座駅,東銀座駅,A-11
[A-12]宝町駅,宝町駅,A-12
[A-13]日本橋駅,日本橋駅,A-13
[A-14]人形町駅,人形町駅,A-14
[A-15]東日本橋駅,東日本橋駅,A-15
[A-16]浅草橋駅,浅草橋駅,A-16
[A-17]蔵前駅,蔵前駅,A-17
[A-18]浅草駅,浅草駅,A-18
[A-19]本所吾妻橋駅,本所吾妻橋駅,A-19
[A-20]押上駅,押上駅,A-20
[I-01]目黒駅,目黒駅,I-01
[I-02]白金台駅,白金台駅,I-02
[I-03]白金高輪駅,白金高輪駅,I-03
[I-04]三田駅,三田駅,I-04
[I-05]芝公園駅,芝公園駅,I-05
[I-06]御成門駅,御成門駅,I-06
[I-07]内幸町駅,内幸町駅,I-07
[I-08]日比谷駅,日比谷駅,I-08
[I-09]大手町駅,大手町駅,I-09
[I-10]神保町駅,神保町駅,I-10
[I-11]水道橋駅,水道橋駅,I-11
[I-12]春日駅,春日駅,I-12
[I-13]白山駅,白山駅,I-13
[I-14]千石駅,千石駅,I-14
[I-15]巣鴨駅,巣鴨駅,I-15
[I-16]西巣鴨駅,西巣鴨駅,I-16
[I-17]新板橋駅,新板橋駅,I-17
[I-18]板橋区役所前駅,板橋区役所前駅,I-18
[I-19]板橋本町駅,板橋本町駅,I-19
[I-20]本蓮沼駅,本蓮沼駅,I-20
[I-21]志村坂上駅,志村坂上駅,I-21
[I-22]志村三丁目駅,志村三丁目駅,I-22
[I-23]蓮根駅,蓮根駅,I-23
[I-24]西台駅,西台駅,I-24
[I-25]高島平駅,高島平駅,I-25
[I-26]新高島平駅,新高島平駅,I-26
[I-27]西高島平駅,西高島平駅,I-27
[S-01]新宿駅,新宿駅,S-01
[S-02]新宿三丁目駅,新宿三丁目駅,S-02
[S-03]曙橋駅,曙橋駅,S-03
[S-04]市ヶ谷駅,市ヶ谷駅,S-04
[S-05]九段下駅,九段下駅,S-05
[S-06]神保町駅,神保町駅,S-06
[S-07]小川町駅,小川町駅,S-07
[S-08]岩本町駅,岩本町駅,S-08
[S-09]馬喰横山駅,馬喰横山駅,S-09
[S-10]浜町駅,浜町駅,S-10
[S-11]森下駅,森下駅,S-11
[S-12]菊川駅,菊川駅,S-12
[S-13]住吉駅,住吉駅,S-13
[S-14]西大島駅,西大島駅,S-14
[S-15]大島駅,大島駅,S-15
[S-16]東大島駅,東大島駅,S-16
[S-17]船堀駅,船堀駅,S-17
[S-18]一之江駅,一之江駅,S-18
[S-19]瑞江駅,瑞江駅,S-19
[S-20]篠崎駅,篠崎駅,S-20
[S-21]本八幡駅,本八幡駅,S-21
[JY 01]東京駅,東京駅,JY 01
[JY 02]神田駅,神田駅,JY 02
[JY 03]秋葉原駅,秋葉原駅,JY 03
[JY 04]御徒町駅,御徒町駅,JY 04
[JY 05]上野駅,上野駅,JY 05
[JY 06]鶯谷駅,鶯谷駅,JY 06
[JY 07]日暮里駅,日暮里駅,JY 07
[JY 08]西日暮里駅,西日暮里駅,JY 08
[JY 09]田端駅,田端駅,JY 09
[JY 10]駒込駅,駒込駅,JY 10
[JY 11]巣鴨駅,巣鴨駅,JY 11
[JY 12]大塚駅,大塚駅,JY 12
[JY 13]池袋駅,池袋駅,JY 13
[JY 14]目白駅,目白駅,JY 14
[JY 15]高田馬場駅,高田馬場駅,JY 15
[JY 16]新大久保駅,新大久保駅,JY 16
[JY 17]新宿駅,新宿駅,JY 17
[JY 18]代々木駅,代々木駅,JY 18
[JY 19]原宿駅,原宿駅,JY 19
[JY 20]渋谷駅,渋谷駅,JY 20
[JY 21]恵比寿駅,恵比寿駅,JY 21
[JY 22]目黒駅,目黒駅,JY 22
[JY 23]五反田駅,五反田駅,JY 23
[JY 24]大崎駅,大崎駅,JY 24
[JY 25]品川駅,品川駅,JY 25
[JY 27]田町駅,田町駅,JY 27
[JY 28]浜松町駅,浜松町駅,JY 28
[JY 29]新橋駅,新橋駅,JY 29
[JY 30]有楽町駅,有楽町駅,JY 30
[JU 01]東京駅,東京駅,JU 01
[JU 02]上野駅,上野駅,JU 02
[JU 03]尾久駅,尾久駅,JU 03
[JU 04]赤羽駅,赤羽駅,JU 04
[JU 05]浦和駅,浦和駅,JU 05
[JU 06]さいたま新都心駅,さいたま新都心駅,JU 06
[JU 07]大宮駅,大宮駅,JU 07
[JJ 01]上野駅,上野駅,JJ 01
[JJ 02]日暮里駅,日暮里駅,JJ 02
[JJ 03]三河島駅,三河島駅,JJ 03
[JJ 04]南千住駅,南千住駅,JJ 04
[JJ 05]北千住駅,北千住駅,JJ 05
[JJ 06]松戸駅,松戸駅,JJ 06
[JJ 07]柏駅,柏駅,JJ 07
[JJ 08]我孫子駅,我孫子駅,JJ 08
[JJ 09]天王台駅,天王台駅,JJ 09
[JJ 10]取手駅,取手駅,JJ 10
[JS 06]逗子駅,逗子駅,JS 06
[JS 07]鎌倉駅,鎌倉駅,JS 07
[JS 08]北鎌倉駅,北鎌倉駅,JS 08
[JS 09]大船駅,大船駅,JS 09
[JS 10]戸塚駅,戸塚駅,JS 10
[JS 11]東戸塚駅,東戸塚駅,JS 11
[JS 12]保土ケ谷駅,保土ケ谷駅,JS 12
[JS 13]横浜駅,横浜駅,JS 13
[JS 14]新川崎駅,新川崎駅,JS 14
[JS 15]武蔵小杉駅,武蔵小杉駅,JS 15
[JS 16]西大井駅,西大井駅,JS 16
[JS 17]大崎駅,大崎駅,JS 17
[JS 18]恵比寿駅,恵比寿駅,JS 18
[JS 19]渋谷駅,渋谷駅,JS 19
[JS 20]新宿駅,新宿駅,JS 20
[JS 21]池袋駅,池袋駅,JS 21
[JS 22]赤羽駅,赤羽駅,JS 22
[JS 23]浦和駅,浦和駅,JS 23
[JS 24]大宮駅,大宮駅,JS 24
[JT 01]東京駅,東京駅,JT 01
[JT 02]新橋駅,新橋駅,JT 02
[JT 03]品川駅,品川駅,JT 03
[JT 04]川崎駅,川崎駅,JT 04
[JT 05]横浜駅,横浜駅,JT 05
[JT 06]戸塚駅,戸塚駅,JT 06
[JT 07]大船駅,大船駅,JT 07
[JT 08]藤沢駅,藤沢駅,JT 08
[JT 09]辻堂駅,辻堂駅,JT 09
[JT 10]茅ケ崎駅,茅ケ崎駅,JT 10
[JT 11]平塚駅,平塚駅,JT 11
[JT 12]大磯駅,大磯駅,JT 12
[JT 13]二宮駅,二宮駅,JT 13
[JT 14]国府津駅,国府津駅,JT 14
[JT 15]鴨宮駅,鴨宮駅,JT 15
[JT 16]小田原駅,小田原駅,JT 16
[JT 17]早川駅,早川駅,JT 17
[JT 18]根府川駅,根府川駅,JT 18
[JT 19]真鶴駅,真鶴駅,JT 19
[JT 20]湯河原駅,湯河原駅,JT 20
[JT 21]熱海駅,熱海駅,JT 21
[JM 10]西船橋駅,西船橋駅,JM 10
[JM 11]船橋法典駅,船橋法典駅,JM 11
[JM 12]市川大野駅,市川大野駅,JM 12
[JM 13]東松戸駅,東松戸駅,JM 13
[JM 14]新八柱駅,新八柱駅,JM 14
[JM 15]新松戸駅,新松戸駅,JM 15
[JM 16]南流山駅,南流山駅,JM 16
[JM 17]三郷駅,三郷駅,JM 17
[JM 18]新三郷駅,新三郷駅,JM 18
[JM 19]吉川美南駅,吉川美南駅,JM 19
[JM 20]吉川駅,吉川駅,JM 20
[JM 21]越谷レイクタウン駅,越谷レイクタウン駅,JM 21
[JM 22]南越谷駅,南越谷駅,JM 22
[JM 23]東川口駅,東川口駅,JM 23
[JM 24]東浦和駅,東浦和駅,JM 24
[JM 25]南浦和駅,南浦和駅,JM 25
[JM 26]武蔵浦和駅,武蔵浦和駅,JM 26
[JM 27]西浦和駅,西浦和駅,JM 27
[JM 28]北朝霞駅,北朝霞駅,JM 28
[JM 29]新座駅,新座駅,JM 29
[JM 30]東所沢駅,東所沢駅,JM 30
[JM 31]新秋津駅,新秋津駅,JM 31
[JM 32]新小平駅,新小平駅,JM 32
[JM 33]西国分寺駅,西国分寺駅,JM 33
[JM 34]北府中駅,北府中駅,JM 34
[JM 35]府中本町駅,府中本町駅,JM 35
[JE 01]東京駅,東京駅,JE 01
[JE 02]八丁堀駅,八丁堀駅,JE 02
[JE 03]越中島駅,越中島駅,JE 03
[JE 04]潮見駅,潮見駅,JE 04
[JE 05]新木場駅,新木場駅,JE 05
[JE 06]葛西臨海公園駅,葛西臨海公園駅,JE 06
[JE 07]舞浜駅,舞浜駅,JE 07
[JE 08]新浦安駅,新浦安駅,JE 08
[JE 09]市川塩浜駅,市川塩浜駅,JE 09
[JE 10]二俣新町駅,二俣新町駅,JE 10
[JE 11]南船橋駅,南船橋駅,JE 11
[JE 12]新習志野駅,新習志野駅,JE 12
[JE 13]海浜幕張駅,海浜幕張駅,JE 13
[JE 14]検見川浜駅,検見川浜駅,JE 14
[JE 15]稲毛海岸駅,稲毛海岸駅,JE 15
[JE 16]千葉みなと駅,千葉みなと駅,JE 16
[JA 08]大崎駅,大崎駅,JA 08
[JA 09]恵比寿駅,恵比寿駅,JA 09
[JA 10]渋谷駅,渋谷駅,JA 10
[JA 11]新宿駅,新宿駅,JA 11
[JA 12]池袋駅,池袋駅,JA 12
[JA 13]板橋駅,板橋駅,JA 13
[JA 14]十条駅,十条駅,JA 14
[JA 15]赤羽駅,赤羽駅,JA 15
[JA 16]北赤羽駅,北赤羽駅,JA 16
[JA 17]浮間舟渡駅,浮間舟渡駅,JA 17
[JA 18]戸田公園駅,戸田公園駅,JA 18
[JA 19]戸田駅,戸田駅,JA 19
[JA 20]北戸田駅,北戸田駅,JA 20
[JA 21]武蔵浦和駅,武蔵浦和駅,JA 21
[JA 22]中浦和駅,中浦和駅,JA 22
[JA 23]南与野駅,南与野駅,JA 23
[JA 24]与野本町駅,与野本町駅,JA 24
[JA 25]北与野駅,北与野駅,JA 25
[JA 26]大宮駅,大宮駅,JA 26
[JO 01]久里浜駅,久里浜駅,JO 01
[JO 02]衣笠駅,衣笠駅,JO 02
[JO 03]横須賀駅,横須賀駅,JO 03
[JO 04]田浦駅,田浦駅,JO 04
[JO 05]東逗子駅,東逗子駅,JO 05
[JO 06]逗子駅,逗子駅,JO 06
[JO 07]鎌倉駅,鎌倉駅,JO 07
[JO 08]北鎌倉駅,北鎌倉駅,JO 08
[JO 09]大船駅,大船駅,JO 09
[JO 10]戸塚駅,戸塚駅,JO 10
[JO 11]東戸塚駅,東戸塚駅,JO 11
[JO 12]保土ケ谷駅,保土ケ谷駅,JO 12
[JO 13]横浜駅,横浜駅,JO 13
[JO 14]新川崎駅,新川崎駅,JO 14
[JO 15]武蔵小杉駅,武蔵小杉駅,JO 15
[JO 16]西大井駅,西大井駅,JO 16
[JO 17]品川駅,品川駅,JO 17
[JO 18]新橋駅,新橋駅,JO 18
[JO 19]東京駅,東京駅,JO 19
[JO 19]東京駅,東京駅,JO 19
[JO 20]新日本橋駅,新日本橋駅,JO 20
[JO 21]馬喰町駅,馬喰町駅,JO 21
[JO 22]錦糸町駅,錦糸町駅,JO 22
[JO 23]新小岩駅,新小岩駅,JO 23
[JO 24]市川駅,市川駅,JO 24
[JO 25]船橋駅,船橋駅,JO 25
[JO 26]津田沼駅,津田沼駅,JO 26
[JO 27]稲毛駅,稲毛駅,JO 27
[JO 28]千葉駅,千葉駅,JO 28
[JK 01]大船駅,大船駅,JK 01
[JK 02]本郷台駅,本郷台駅,JK 02
[JK 03]港南台駅,港南台駅,JK 03
[JK 04]洋光台駅,洋光台駅,JK 04
[JK 05]新杉田駅,新杉田駅,JK 05
[JK 06]磯子駅,磯子駅,JK 06
[JK 07]根岸駅,根岸駅,JK 07
[JK 08]山手駅,山手駅,JK 08
[JK 09]石川町駅,石川町駅,JK 09
[JK 10]関内駅,関内駅,JK 10
[JK 11]桜木町駅,桜木町駅,JK 11
[JK 12]横浜駅,横浜駅,JK 12
[JK 12]横浜駅,横浜駅,JK 12
[JK 13]東神奈川駅,東神奈川駅,JK 13
[JK 14]新子安駅,新子安駅,JK 14
[JK 15]鶴見駅,鶴見駅,JK 15
[JK 16]川崎駅,川崎駅,JK 16
[JK 17]蒲田駅,蒲田駅,JK 17
[JK 18]大森駅,大森駅,JK 18
[JK 19]大井町駅,大井町駅,JK 19
[JK 20]品川駅,品川駅,JK 20
[JK 22]田町駅,田町駅,JK 22
[JK 23]浜松町駅,浜松町駅,JK 23
[JK 24]新橋駅,新橋駅,JK 24
[JK 25]有楽町駅,有楽町駅,JK 25
[JK 26]東京駅,東京駅,JK 26
[JK 27]神田駅,神田駅,JK 27
[JK 28]秋葉原駅,秋葉原駅,JK 28
[JK 29]御徒町駅,御徒町駅,JK 29
[JK 30]上野駅,上野駅,JK 30
[JK 31]鶯谷駅,鶯谷駅,JK 31
[JK 32]日暮里駅,日暮里駅,JK 32
[JK 33]西日暮里駅,西日暮里駅,JK 33
[JK 34]田端駅,田端駅,JK 34
[JK 35]上中里駅,上中里駅,JK 35
[JK 36]王子駅,王子駅,JK 36
[JK 37]東十条駅,東十条駅,JK 37
[JK 38]赤羽駅,赤羽駅,JK 38
[JK 39]川口駅,川口駅,JK 39
[JK 40]西川口駅,西川口駅,JK 40
[JK 41]蕨駅,蕨駅,JK 41
[JK 42]南浦和駅,南浦和駅,JK 42
[JK 43]浦和駅,浦和駅,JK 43
[JK 44]北浦和駅,北浦和駅,JK 44
[JK 45]与野駅,与野駅,JK 45
[JK 46]さいたま新都心駅,さいたま新都心駅,JK 46
[JK 47]大宮駅,大宮駅,JK 47
[JH 13]東神奈川駅,東神奈川駅,JH 13
[JH 14]大口駅,大口駅,JH 14
[JH 15]菊名駅,菊名駅,JH 15
[JH 16]新横浜駅,新横浜駅,JH 16
[JH 17]小机駅,小机駅,JH 17
[JH 18]鴨居駅,鴨居駅,JH 18
[JH 19]中山駅,中山駅,JH 19
[JH 20]十日市場駅,十日市場駅,JH 20
[JH 21]長津田駅,長津田駅,JH 21
[JH 22]成瀬駅,成瀬駅,JH 22
[JH 23]町田駅,町田駅,JH 23
[JH 24]古淵駅,古淵駅,JH 24
[JH 25]淵野辺駅,淵野辺駅,JH 25
[JH 26]矢部駅,矢部駅,JH 26
[JH 27]相模原駅,相模原駅,JH 27
[JH 28]橋本駅,橋本駅,JH 28
[JH 29]相原駅,相原駅,JH 29
[JH 30]八王子みなみ野駅,八王子みなみ野駅,JH 30
[JH 31]片倉駅,片倉駅,JH 31
[JH 32]八王子駅,八王子駅,JH 32
[JN 01]川崎駅,川崎駅,JN 01
[JN 02]尻手駅,尻手駅,JN 02
[JN 03]矢向駅,矢向駅,JN 03
[JN 04]鹿島田駅,鹿島田駅,JN 04
[JN 05]平間駅,平間駅,JN 05
[JN 06]向河原駅,向河原駅,JN 06
[JN 07]武蔵小杉駅,武蔵小杉駅,JN 07
[JN 08]武蔵中原駅,武蔵中原駅,JN 08
[JN 09]武蔵新城駅,武蔵新城駅,JN 09
[JN 10]武蔵溝ノ口駅,武蔵溝ノ口駅,JN 10
[JN 11]津田山駅,津田山駅,JN 11
[JN 12]久地駅,久地駅,JN 12
[JN 13]宿河原駅,宿河原駅,JN 13
[JN 14]登戸駅,登戸駅,JN 14
[JN 15]中野島駅,中野島駅,JN 15
[JN 16]稲田堤駅,稲田堤駅,JN 16
[JN 17]矢野口駅,矢野口駅,JN 17
[JN 18]稲城長沼駅,稲城長沼駅,JN 18
[JN 19]南多摩駅,南多摩駅,JN 19
[JN 20]府中本町駅,府中本町駅,JN 20
[JN 21]分倍河原駅,分倍河原駅,JN 21
[JN 22]西府駅,西府駅,JN 22
[JN 23]谷保駅,谷保駅,JN 23
[JN 24]矢川駅,矢川駅,JN 24
[JN 25]西国立駅,西国立駅,JN 25
[JN 26]立川駅,立川駅,JN 26
[JB 01]三鷹駅,三鷹駅,JB 01
[JB 02]吉祥寺駅,吉祥寺駅,JB 02
[JB 03]西荻窪駅,西荻窪駅,JB 03
[JB 04]荻窪駅,荻窪駅,JB 04
[JB 05]阿佐ケ谷駅,阿佐ケ谷駅,JB 05
[JB 06]高円寺駅,高円寺駅,JB 06
[JB 07]中野駅,中野駅,JB 07
[JB 08]東中野駅,東中野駅,JB 08
[JB 09]大久保駅,大久保駅,JB 09
[JB 10]新宿駅,新宿駅,JB 10
[JB 11]代々木駅,代々木駅,JB 11
[JB 12]千駄ケ谷駅,千駄ケ谷駅,JB 12
[JB 13]信濃町駅,信濃町駅,JB 13
[JB 14]四ツ谷駅,四ツ谷駅,JB 14
[JB 15]市ケ谷駅,市ケ谷駅,JB 15
[JB 16]飯田橋駅,飯田橋駅,JB 16
[JB 17]水道橋駅,水道橋駅,JB 17
[JB 18]御茶ノ水駅,御茶ノ水駅,JB 18
[JB 19]秋葉原駅,秋葉原駅,JB 19
[JB 20]浅草橋駅,浅草橋駅,JB 20
[JB 21]両国駅,両国駅,JB 21
[JB 22]錦糸町駅,錦糸町駅,JB 22
[JB 23]亀戸駅,亀戸駅,JB 23
[JB 24]平井駅,平井駅,JB 24
[JB 25]新小岩駅,新小岩駅,JB 25
[JB 26]小岩駅,小岩駅,JB 26
[JB 27]市川駅,市川駅,JB 27
[JB 28]本八幡駅,本八幡駅,JB 28
[JB 29]下総中山駅,下総中山駅,JB 29
[JB 30]西船橋駅,西船橋駅,JB 30
[JB 31]船橋駅,船橋駅,JB 31
[JB 32]東船橋駅,東船橋駅,JB 32
[JB 33]津田沼駅,津田沼駅,JB 33
[JB 34]幕張本郷駅,幕張本郷駅,JB 34
[JB 35]幕張駅,幕張駅,JB 35
[JB 36]新検見川駅,新検見川駅,JB 36
[JB 37]稲毛駅,稲毛駅,JB 37
[JB 38]西千葉駅,西千葉駅,JB 38
[JB 39]千葉駅,千葉駅,JB 39
[JC 01]東京駅,東京駅,JC 01
[JC 02]神田駅,神田駅,JC 02
[JC 03]御茶ノ水駅,御茶ノ水駅,JC 03
[JC 04]四ツ谷駅,四ツ谷駅,JC 04
[JC 05]新宿駅,新宿駅,JC 05
[JC 06]中野駅,中野駅,JC 06
[JC 07]高円寺駅,高円寺駅,JC 07
[JC 08]阿佐ケ谷駅,阿佐ケ谷駅,JC 08
[JC 09]荻窪駅,荻窪駅,JC 09
[JC 10]西荻窪駅,西荻窪駅,JC 10
[JC 11]吉祥寺駅,吉祥寺駅,JC 11
[JC 12]三鷹駅,三鷹駅,JC 12
[JC 13]武蔵境駅,武蔵境駅,JC 13
[JC 14]東小金井駅,東小金井駅,JC 14
[JC 15]武蔵小金井駅,武蔵小金井駅,JC 15
[JC 16]国分寺駅,国分寺駅,JC 16
[JC 17]西国分寺駅,西国分寺駅,JC 17
[JC 18]国立駅,国立駅,JC 18
[JC 19]立川駅,立川駅,JC 19
[JC 20]日野駅,日野駅,JC 20
[JC 21]豊田駅,豊田駅,JC 21
[JC 22]八王子駅,八王子駅,JC 22
[JC 23]西八王子駅,西八王子駅,JC 23
[JC 24]高尾駅,高尾駅,JC 24
[R 01]新木場駅,新木場駅,R 01
[R 02]東雲駅,東雲駅,R 02
[R 03]国際展示場駅,国際展示場駅,R 03
[R 04]東京テレポート駅,東京テレポート駅,R 04
[R 05]天王洲アイル駅,天王洲アイル駅,R 05
[R 06]品川シーサイド駅,品川シーサイド駅,R 06
[R 07]大井町駅,大井町駅,R 07
[R 08]大崎駅,大崎駅,R 08
[U-01]新橋駅,新橋駅,U-01
[U-02]汐留駅,汐留駅,U-02
[U-03]竹芝駅,竹芝駅,U-03
[U-04]日の出駅,日の出駅,U-04
[U-05]芝浦ふ頭駅,芝浦ふ頭駅,U-05
[U-06]お台場海浜公園駅,お台場海浜公園駅,U-06
[U-07]台場駅,台場駅,U-07
[U-08]東京国際クルーズターミナル駅,東京国際クルーズターミナル駅,U-08
[U-09]テレコムセンター駅,テレコムセンター駅,U-09
[U-10]青海駅,青海駅,U-10
[U-11]東京ビッグサイト駅,東京ビッグサイト駅,U-11
[U-12]有明駅,有明駅,U-12
[U-13]有明テニスの森駅,有明テニスの森駅,U-13
[U-14]市場前駅,市場前駅,U-14
[U-15]新豊洲駅,新豊洲駅,U-15
[U-16]豊洲駅,豊洲駅,U-16
エッジデータ(railway_edge.csv)
numbering_a,numbering_b,line,distance
G-01,G-02,銀座線,1.3
G-02,G-03,銀座線,0.7
G-03,G-04,銀座線,0.7
G-04,G-05,銀座線,1.3
G-05,G-06,銀座線,0.9
G-06,G-07,銀座線,0.6
G-07,G-08,銀座線,0.8
G-08,G-09,銀座線,0.9
G-09,G-10,銀座線,0.7
G-10,G-11,銀座線,0.7
G-11,G-12,銀座線,0.6
G-12,G-13,銀座線,0.7
G-13,G-14,銀座線,1.1
G-14,G-15,銀座線,0.6
G-15,G-16,銀座線,0.5
G-16,G-17,銀座線,0.7
G-17,G-18,銀座線,0.7
G-18,G-19,銀座線,0.8
M-01,M-02,丸ノ内線,1.5
M-02,M-03,丸ノ内線,1.2
M-03,M-04,丸ノ内線,0.9
M-04,M-05,丸ノ内線,1
M-05,M-06,丸ノ内線,1.1
M-06,M-07,丸ノ内線,1.1
M-07,M-08,丸ノ内線,0.8
M-08,M-09,丸ノ内線,0.3
M-09,M-10,丸ノ内線,0.7
M-10,M-11,丸ノ内線,0.9
M-11,M-12,丸ノ内線,1
M-12,M-13,丸ノ内線,1.3
M-13,M-14,丸ノ内線,0.9
M-14,M-15,丸ノ内線,0.7
M-15,M-16,丸ノ内線,1
M-16,M-17,丸ノ内線,1.1
M-17,M-18,丸ノ内線,0.6
M-18,M-19,丸ノ内線,0.9
M-19,M-20,丸ノ内線,0.8
M-20,M-21,丸ノ内線,0.8
M-21,M-22,丸ノ内線,0.8
M-22,M-23,丸ノ内線,1.8
M-23,M-24,丸ノ内線,1.2
M-24,M-25,丸ノ内線,1.8
Mb-03,Mb-04,丸ノ内線,1.3
Mb-04,Mb-05,丸ノ内線,0.6
Mb-05,M-06,丸ノ内線,1.3
H-01,H-02,日比谷線,1
H-02,H-03,日比谷線,1.5
H-03,H-04,日比谷線,1.7
H-04,H-05,日比谷線,1.5
H-05,H-06,日比谷線,1.3
H-06,H-07,日比谷線,1.2
H-07,H-08,日比谷線,0.4
H-08,H-09,日比谷線,0.4
H-09,H-10,日比谷線,0.6
H-10,H-11,日比谷線,1
H-11,H-12,日比谷線,0.5
H-12,H-13,日比谷線,0.9
H-13,H-14,日比谷線,0.6
H-14,H-15,日比谷線,0.9
H-15,H-16,日比谷線,1
H-16,H-17,日比谷線,0.5
H-17,H-18,日比谷線,1.2
H-18,H-19,日比谷線,1.2
H-19,H-20,日比谷線,0.8
H-20,H-21,日比谷線,2.1
T-01,T-02,東西線,2
T-02,T-03,東西線,1.9
T-03,T-04,東西線,1.7
T-04,T-05,東西線,1.2
T-05,T-06,東西線,1.2
T-06,T-07,東西線,0.7
T-07,T-08,東西線,1
T-08,T-09,東西線,1
T-09,T-10,東西線,0.8
T-10,T-11,東西線,0.5
T-11,T-12,東西線,1.8
T-12,T-13,東西線,1.1
T-13,T-14,東西線,0.9
T-14,T-15,東西線,1.2
T-15,T-16,東西線,2.7
T-16,T-17,東西線,1.2
T-17,T-18,東西線,1.9
T-18,T-19,東西線,1.2
T-19,T-20,東西線,1.5
T-20,T-21,東西線,1.3
T-21,T-22,東西線,2.1
T-22,T-23,東西線,1.9
C-01,C-02,千代田線,1
C-02,C-03,千代田線,1.2
C-03,C-04,千代田線,0.9
C-04,C-05,千代田線,1.4
C-05,C-06,千代田線,1.1
C-06,C-07,千代田線,0.8
C-07,C-08,千代田線,0.8
C-08,C-09,千代田線,0.8
C-09,C-10,千代田線,0.7
C-10,C-11,千代田線,0.7
C-11,C-12,千代田線,1.3
C-12,C-13,千代田線,1.2
C-13,C-14,千代田線,1.2
C-14,C-15,千代田線,1
C-15,C-16,千代田線,0.9
C-16,C-17,千代田線,1.7
C-17,C-18,千代田線,2.6
C-18,C-19,千代田線,2.6
C-19,C-20,千代田線,2.1
Y-01,Y-02,有楽町線,2.2
Y-02,Y-03,有楽町線,1.4
Y-03,Y-04,有楽町線,1.8
Y-04,Y-05,有楽町線,1.4
Y-05,Y-06,有楽町線,1.5
Y-06,Y-07,有楽町線,1
Y-07,Y-08,有楽町線,1
Y-08,Y-09,有楽町線,1.2
Y-09,Y-10,有楽町線,0.9
Y-10,Y-11,有楽町線,1.1
Y-11,Y-12,有楽町線,1.3
Y-12,Y-13,有楽町線,1.6
Y-13,Y-14,有楽町線,1.1
Y-14,Y-15,有楽町線,0.9
Y-15,Y-16,有楽町線,0.9
Y-16,Y-17,有楽町線,0.9
Y-17,Y-18,有楽町線,1
Y-18,Y-19,有楽町線,0.5
Y-19,Y-20,有楽町線,0.7
Y-20,Y-21,有楽町線,1.3
Y-21,Y-22,有楽町線,1.4
Y-22,Y-23,有楽町線,1.7
Y-23,Y-24,有楽町線,1.5
Z-01,Z-02,半蔵門線,1.3
Z-02,Z-03,半蔵門線,1.4
Z-03,Z-04,半蔵門線,1.4
Z-04,Z-05,半蔵門線,1
Z-05,Z-06,半蔵門線,1.6
Z-06,Z-07,半蔵門線,0.4
Z-07,Z-08,半蔵門線,1.7
Z-08,Z-09,半蔵門線,0.7
Z-09,Z-10,半蔵門線,1.3
Z-10,Z-11,半蔵門線,1.7
Z-11,Z-12,半蔵門線,1.9
Z-12,Z-13,半蔵門線,1
Z-13,Z-14,半蔵門線,1.4
N-01,N-02,南北線,1.3
N-02,N-03,南北線,1
N-03,N-04,南北線,1.3
N-04,N-05,南北線,1.2
N-05,N-06,南北線,0.9
N-06,N-07,南北線,0.9
N-07,N-08,南北線,1.3
N-08,N-09,南北線,1
N-09,N-10,南北線,1.1
N-10,N-11,南北線,1.4
N-11,N-12,南北線,1.3
N-12,N-13,南北線,0.9
N-13,N-14,南北線,1.4
N-14,N-15,南北線,1.4
N-15,N-16,南北線,1
N-16,N-17,南北線,1.2
N-17,N-18,南北線,1.6
N-18,N-19,南北線,1.1
F-01,F-02,副都心線,2.2
F-02,F-03,副都心線,1.4
F-03,F-04,副都心線,1.8
F-04,F-05,副都心線,1.4
F-05,F-06,副都心線,1.5
F-06,F-07,副都心線,1.1
F-07,F-08,副都心線,1
F-08,F-09,副都心線,0.9
F-09,F-10,副都心線,1.8
F-10,F-11,副都心線,1.5
F-11,F-12,副都心線,0.9
F-12,F-13,副都心線,1.1
F-13,F-14,副都心線,1.4
F-14,F-15,副都心線,1.2
F-15,F-16,副都心線,1
E-28,E-01,大江戸線,0.8
E-01,E-02,大江戸線,1.4
E-02,E-03,大江戸線,1
E-03,E-04,大江戸線,0.6
E-04,E-05,大江戸線,1
E-05,E-06,大江戸線,1
E-06,E-07,大江戸線,1
E-07,E-08,大江戸線,0.8
E-08,E-09,大江戸線,1.1
E-09,E-10,大江戸線,0.8
E-10,E-11,大江戸線,1
E-11,E-12,大江戸線,1.2
E-12,E-13,大江戸線,1
E-13,E-14,大江戸線,0.6
E-14,E-15,大江戸線,1.2
E-15,E-16,大江戸線,1.4
E-16,E-17,大江戸線,0.8
E-17,E-18,大江戸線,1.5
E-18,E-19,大江戸線,0.9
E-19,E-20,大江戸線,0.9
E-20,E-21,大江戸線,1.3
E-21,E-22,大江戸線,0.8
E-22,E-23,大江戸線,1.1
E-23,E-24,大江戸線,1.3
E-24,E-25,大江戸線,1.2
E-25,E-26,大江戸線,1.5
E-26,E-27,大江戸線,0.6
E-27,E-28,大江戸線,0.8
E-28,E-29,大江戸線,0.8
E-29,E-30,大江戸線,1.2
E-30,E-31,大江戸線,1
E-31,E-32,大江戸線,0.8
E-32,E-33,大江戸線,1.3
E-33,E-34,大江戸線,1.6
E-34,E-35,大江戸線,1.6
E-35,E-36,大江戸線,0.9
E-36,E-37,大江戸線,1.5
E-37,E-38,大江戸線,1.4
A-01,A-02,浅草線,1.2
A-02,A-03,浅草線,0.9
A-03,A-04,浅草線,1.1
A-04,A-05,浅草線,1.6
A-05,A-06,浅草線,0.7
A-06,A-07,浅草線,1.4
A-07,A-08,浅草線,1.1
A-08,A-09,浅草線,1.5
A-09,A-10,浅草線,1
A-10,A-11,浅草線,0.9
A-11,A-12,浅草線,0.8
A-12,A-13,浅草線,0.8
A-13,A-14,浅草線,0.8
A-14,A-15,浅草線,0.7
A-15,A-16,浅草線,0.7
A-16,A-17,浅草線,0.7
A-17,A-18,浅草線,0.9
A-18,A-19,浅草線,0.7
A-19,A-20,浅草線,0.8
I-01,I-02,三田線,1.3
I-02,I-03,三田線,1
I-03,I-04,三田線,1.7
I-04,I-05,三田線,0.6
I-05,I-06,三田線,0.7
I-06,I-07,三田線,1.1
I-07,I-08,三田線,0.9
I-08,I-09,三田線,0.9
I-09,I-10,三田線,1.4
I-10,I-11,三田線,1
I-11,I-12,三田線,0.7
I-12,I-13,三田線,1.4
I-13,I-14,三田線,1
I-14,I-15,三田線,0.9
I-15,I-16,三田線,1.4
I-16,I-17,三田線,1
I-17,I-18,三田線,0.9
I-18,I-19,三田線,1.2
I-19,I-20,三田線,0.9
I-20,I-21,三田線,1.1
I-21,I-22,三田線,0.9
I-22,I-23,三田線,1.2
I-23,I-24,三田線,0.8
I-24,I-25,三田線,1
I-25,I-26,三田線,0.7
I-26,I-27,三田線,0.8
S-01,S-02,新宿線,0.8
S-02,S-03,新宿線,1.5
S-03,S-04,新宿線,1.4
S-04,S-05,新宿線,1.3
S-05,S-06,新宿線,0.6
S-06,S-07,新宿線,0.9
S-07,S-08,新宿線,0.8
S-08,S-09,新宿線,0.8
S-09,S-10,新宿線,0.6
S-10,S-11,新宿線,0.8
S-11,S-12,新宿線,0.8
S-12,S-13,新宿線,0.9
S-13,S-14,新宿線,1
S-14,S-15,新宿線,0.7
S-15,S-16,新宿線,1.2
S-16,S-17,新宿線,1.7
S-17,S-18,新宿線,1.7
S-18,S-19,新宿線,1.7
S-19,S-20,新宿線,1.5
S-20,S-21,新宿線,2.8
JY 01,JY 02,山手線,1.3
JY 02,JY 03,山手線,0.7
JY 03,JY 04,山手線,1
JY 04,JY 05,山手線,0.6
JY 05,JY 06,山手線,1.1
JY 06,JY 07,山手線,1.1
JY 07,JY 08,山手線,0.5
JY 08,JY 09,山手線,0.8
JY 09,JY 10,山手線,1.6
JY 10,JY 11,山手線,0.7
JY 11,JY 12,山手線,1.1
JY 12,JY 13,山手線,1.8
JY 13,JY 14,山手線,1.2
JY 14,JY 15,山手線,0.9
JY 15,JY 16,山手線,1.4
JY 16,JY 17,山手線,1.3
JY 17,JY 18,山手線,0.7
JY 18,JY 19,山手線,1.5
JY 19,JY 20,山手線,1.2
JY 20,JY 21,山手線,1.6
JY 21,JY 22,山手線,1.5
JY 22,JY 23,山手線,1.2
JY 23,JY 24,山手線,0.9
JY 24,JY 25,山手線,2
JY 25,JY 27,山手線,2.2
JY 27,JY 28,山手線,1.5
JY 28,JY 29,山手線,1.2
JY 29,JY 30,山手線,1.1
JY 30,JY 01,山手線,0.8
JU 01,JU 02,上野東京ライン,3.6
JU 02,JU 03,上野東京ライン,4.8
JU 03,JU 04,上野東京ライン,5
JU 04,JU 05,上野東京ライン,11
JU 05,JU 06,上野東京ライン,4.5
JU 06,JU 07,上野東京ライン,1.6
JJ 01,JJ 02,常磐快速線,2.2
JJ 02,JJ 03,常磐快速線,1.2
JJ 03,JJ 04,常磐快速線,2.2
JJ 04,JJ 05,常磐快速線,1.8
JJ 05,JJ 06,常磐快速線,10.5
JJ 06,JJ 07,常磐快速線,11.2
JJ 07,JJ 08,常磐快速線,4.4
JJ 08,JJ 09,常磐快速線,2.7
JJ 09,JJ 10,常磐快速線,3.4
JS 06,JS 07,湘南新宿ライン,3.9
JS 07,JS 08,湘南新宿ライン,2.2
JS 08,JS 09,湘南新宿ライン,2.3
JS 09,JS 10,湘南新宿ライン,5.6
JS 10,JS 11,湘南新宿ライン,4.2
JS 11,JS 12,湘南新宿ライン,4.9
JS 12,JS 13,湘南新宿ライン,3
JS 13,JS 14,湘南新宿ライン,12.2
JS 14,JS 15,湘南新宿ライン,2.7
JS 15,JS 16,湘南新宿ライン,6.4
JS 16,JS 17,湘南新宿ライン,5.6
JS 17,JS 18,湘南新宿ライン,3.6
JS 18,JS 19,湘南新宿ライン,1.6
JS 19,JS 20,湘南新宿ライン,3.4
JS 20,JS 21,湘南新宿ライン,4.8
JS 21,JS 22,湘南新宿ライン,11.3
JS 22,JS 23,湘南新宿ライン,11
JS 23,JS 24,湘南新宿ライン,6.1
JT 01,JT 02,東海道線,1.9
JT 02,JT 03,東海道線,4.9
JT 03,JT 04,東海道線,11.4
JT 04,JT 05,東海道線,10.6
JT 05,JT 06,東海道線,12.1
JT 06,JT 07,東海道線,5.6
JT 07,JT 08,東海道線,4.6
JT 08,JT 09,東海道線,3.7
JT 09,JT 10,東海道線,3.8
JT 10,JT 11,東海道線,5.2
JT 11,JT 12,東海道線,4
JT 12,JT 13,東海道線,5.3
JT 13,JT 14,東海道線,4.6
JT 14,JT 15,東海道線,3.1
JT 15,JT 16,東海道線,3.1
JT 16,JT 17,東海道線,2.1
JT 17,JT 18,東海道線,4.4
JT 18,JT 19,東海道線,5.4
JT 19,JT 20,東海道線,3.3
JT 20,JT 21,東海道線,5.5
JM 10,JM 11,武蔵野線,2.9
JM 11,JM 12,武蔵野線,3
JM 12,JM 13,武蔵野線,1.9
JM 13,JM 14,武蔵野線,2.4
JM 14,JM 15,武蔵野線,4.1
JM 15,JM 16,武蔵野線,2.1
JM 16,JM 17,武蔵野線,2
JM 17,JM 18,武蔵野線,2.1
JM 18,JM 19,武蔵野線,1.5
JM 19,JM 20,武蔵野線,1.6
JM 20,JM 21,武蔵野線,1.9
JM 21,JM 22,武蔵野線,2.4
JM 22,JM 23,武蔵野線,4.7
JM 23,JM 24,武蔵野線,3.8
JM 24,JM 25,武蔵野線,3.7
JM 25,JM 26,武蔵野線,1.9
JM 26,JM 27,武蔵野線,2
JM 27,JM 28,武蔵野線,5
JM 28,JM 29,武蔵野線,3.1
JM 29,JM 30,武蔵野線,0.3
JM 30,JM 31,武蔵野線,6.4
JM 31,JM 32,武蔵野線,5.6
JM 32,JM 33,武蔵野線,3.5
JM 33,JM 34,武蔵野線,2.2
JM 34,JM 35,武蔵野線,1.7
JE 01,JE 02,京葉線,1.2
JE 02,JE 03,京葉線,1.6
JE 03,JE 04,京葉線,2.6
JE 04,JE 05,京葉線,2
JE 05,JE 06,京葉線,3.2
JE 06,JE 07,京葉線,2.1
JE 07,JE 08,京葉線,3.4
JE 08,JE 09,京葉線,2.1
JE 09,JE 10,京葉線,4.4
JE 10,JE 11,京葉線,3.4
JE 11,JE 12,京葉線,2.3
JE 12,JE 13,京葉線,3.4
JE 13,JE 14,京葉線,2
JE 14,JE 15,京葉線,1.6
JE 15,JE 16,京葉線,3.7
JE 09,JM 10,京葉線,5.9
JM 10,JE 11,京葉線,5.4
JA 08,JA 09,埼京線,3.6
JA 09,JA 10,埼京線,1.6
JA 10,JA 11,埼京線,3.4
JA 11,JA 12,埼京線,4.8
JA 12,JA 13,埼京線,1.8
JA 13,JA 14,埼京線,1.7
JA 14,JA 15,埼京線,2
JA 15,JA 16,埼京線,1.5
JA 16,JA 17,埼京線,1.6
JA 17,JA 18,埼京線,2.4
JA 18,JA 19,埼京線,1.3
JA 19,JA 20,埼京線,1.4
JA 20,JA 21,埼京線,2.4
JA 21,JA 22,埼京線,1.2
JA 22,JA 23,埼京線,1.7
JA 23,JA 24,埼京線,1.6
JA 24,JA 25,埼京線,1.1
JA 25,JA 26,埼京線,1.8
JO 01,JO 02,横須賀線,4.6
JO 02,JO 03,横須賀線,3.4
JO 03,JO 04,横須賀線,2.1
JO 04,JO 05,横須賀線,3.4
JO 05,JO 06,横須賀線,2
JO 06,JO 07,横須賀線,3.9
JO 07,JO 08,横須賀線,2.2
JO 08,JO 09,横須賀線,2.3
JO 09,JO 10,横須賀線,5.6
JO 10,JO 11,横須賀線,4.2
JO 11,JO 12,横須賀線,4.9
JO 12,JO 13,横須賀線,10.1
JO 13,JO 14,横須賀線,5.1
JO 14,JO 15,横須賀線,2.7
JO 15,JO 16,横須賀線,6.4
JO 16,JO 17,横須賀線,3.6
JO 17,JO 18,横須賀線,4.9
JO 18,JO 19,横須賀線,1.9
JO 19,JO 20,総武快速線,1.2
JO 20,JO 21,総武快速線,1.1
JO 21,JO 22,総武快速線,2.5
JO 22,JO 23,総武快速線,5.2
JO 23,JO 24,総武快速線,5.4
JO 24,JO 25,総武快速線,7.8
JO 25,JO 26,総武快速線,3.5
JO 26,JO 27,総武快速線,9.2
JO 27,JO 28,総武快速線,3.3
JK 01,JK 02,根岸線,3.6
JK 02,JK 03,根岸線,2.5
JK 03,JK 04,根岸線,1.9
JK 04,JK 05,根岸線,3
JK 05,JK 06,根岸線,1.6
JK 06,JK 07,根岸線,2.4
JK 07,JK 08,根岸線,2.1
JK 08,JK 09,根岸線,1.2
JK 09,JK 10,根岸線,0.8
JK 10,JK 11,根岸線,1
JK 11,JK 12,根岸線,2
JK 12,JK 13,京浜東北線,1.8
JK 13,JK 14,京浜東北線,2.2
JK 14,JK 15,京浜東北線,3.1
JK 15,JK 16,京浜東北線,3.5
JK 16,JK 17,京浜東北線,3.8
JK 17,JK 18,京浜東北線,3
JK 18,JK 19,京浜東北線,2.2
JK 19,JK 20,京浜東北線,2.4
JK 20,JK 22,京浜東北線,2.2
JK 22,JK 23,京浜東北線,1.5
JK 23,JK 24,京浜東北線,1.2
JK 24,JK 25,京浜東北線,0.8
JK 25,JK 26,京浜東北線,1.1
JK 26,JK 27,京浜東北線,1.3
JK 27,JK 28,京浜東北線,0.7
JK 28,JK 29,京浜東北線,1
JK 29,JK 30,京浜東北線,0.6
JK 30,JK 31,京浜東北線,1.1
JK 31,JK 32,京浜東北線,1.1
JK 32,JK 33,京浜東北線,0.5
JK 33,JK 34,京浜東北線,0.8
JK 34,JK 35,京浜東北線,1.7
JK 35,JK 36,京浜東北線,1.1
JK 36,JK 37,京浜東北線,1.5
JK 37,JK 38,京浜東北線,1.8
JK 38,JK 39,京浜東北線,2.6
JK 39,JK 40,京浜東北線,2
JK 40,JK 41,京浜東北線,1.9
JK 41,JK 42,京浜東北線,2.8
JK 42,JK 43,京浜東北線,1.7
JK 43,JK 44,京浜東北線,1.8
JK 44,JK 45,京浜東北線,1.6
JK 45,JK 46,京浜東北線,1.1
JK 46,JK 47,京浜東北線,1.6
JH 13,JH 14,横浜線,2.2
JH 14,JH 15,横浜線,2.6
JH 15,JH 16,横浜線,1.3
JH 16,JH 17,横浜線,1.7
JH 17,JH 18,横浜線,3.1
JH 18,JH 19,横浜線,2.6
JH 19,JH 20,横浜線,2.4
JH 20,JH 21,横浜線,2
JH 21,JH 22,横浜線,2.3
JH 22,JH 23,横浜線,2.7
JH 23,JH 24,横浜線,2.8
JH 24,JH 25,横浜線,2.7
JH 25,JH 26,横浜線,0.8
JH 26,JH 27,横浜線,1.8
JH 27,JH 28,横浜線,2.8
JH 28,JH 29,横浜線,1.9
JH 29,JH 30,横浜線,2.9
JH 30,JH 31,横浜線,1.4
JH 31,JH 32,横浜線,2.6
JN 01,JN 02,南武線,1.7
JN 02,JN 03,南武線,0.9
JN 03,JN 04,南武線,1.5
JN 04,JN 05,南武線,1.2
JN 05,JN 06,南武線,1.3
JN 06,JN 07,南武線,0.9
JN 07,JN 08,南武線,1.7
JN 08,JN 09,南武線,1.3
JN 09,JN 10,南武線,2.2
JN 10,JN 11,南武線,1.2
JN 11,JN 12,南武線,1
JN 12,JN 13,南武線,1.3
JN 13,JN 14,南武線,1.1
JN 14,JN 15,南武線,2.2
JN 15,JN 16,南武線,1.3
JN 16,JN 17,南武線,1.6
JN 17,JN 18,南武線,1.7
JN 18,JN 19,南武線,1.4
JN 19,JN 20,南武線,2.4
JN 20,JN 21,南武線,0.9
JN 21,JN 22,南武線,1.2
JN 22,JN 23,南武線,1.6
JN 23,JN 24,南武線,1.4
JN 24,JN 25,南武線,1.3
JN 25,JN 26,南武線,1.2
JB 01,JB 02,中央・総武緩行線,1.6
JB 02,JB 03,中央・総武緩行線,1.9
JB 03,JB 04,中央・総武緩行線,1.9
JB 04,JB 05,中央・総武緩行線,1.4
JB 05,JB 06,中央・総武緩行線,1.2
JB 06,JB 07,中央・総武緩行線,1.4
JB 07,JB 08,中央・総武緩行線,1.9
JB 08,JB 09,中央・総武緩行線,1.1
JB 09,JB 10,中央・総武緩行線,1.4
JB 10,JB 11,中央・総武緩行線,0.7
JB 11,JB 12,中央・総武緩行線,1
JB 12,JB 13,中央・総武緩行線,0.7
JB 13,JB 14,中央・総武緩行線,1.3
JB 14,JB 15,中央・総武緩行線,0.8
JB 15,JB 16,中央・総武緩行線,1.5
JB 16,JB 17,中央・総武緩行線,0.9
JB 17,JB 18,中央・総武緩行線,0.8
JB 18,JB 19,中央・総武緩行線,0.9
JB 19,JB 20,中央・総武緩行線,1.1
JB 20,JB 21,中央・総武緩行線,0.8
JB 21,JB 22,中央・総武緩行線,1.5
JB 22,JB 23,中央・総武緩行線,1.5
JB 23,JB 24,中央・総武緩行線,1.9
JB 24,JB 25,中央・総武緩行線,1.8
JB 25,JB 26,中央・総武緩行線,2.8
JB 26,JB 27,中央・総武緩行線,2.6
JB 27,JB 28,中央・総武緩行線,2
JB 28,JB 29,中央・総武緩行線,1.6
JB 29,JB 30,中央・総武緩行線,1.6
JB 30,JB 31,中央・総武緩行線,2.6
JB 31,JB 32,中央・総武緩行線,1.8
JB 32,JB 33,中央・総武緩行線,1.7
JB 33,JB 34,中央・総武緩行線,2.9
JB 34,JB 35,中央・総武緩行線,2
JB 35,JB 36,中央・総武緩行線,1.6
JB 36,JB 37,中央・総武緩行線,2.7
JB 37,JB 38,中央・総武緩行線,1.9
JB 38,JB 39,中央・総武緩行線,1.4
JC 01,JC 02,中央快速線,1.3
JC 02,JC 03,中央快速線,4.5
JC 03,JC 04,中央快速線,3.8
JC 04,JC 05,中央快速線,3.2
JC 05,JC 06,中央快速線,1.9
JC 06,JC 07,中央快速線,1.4
JC 07,JC 08,中央快速線,1.2
JC 08,JC 09,中央快速線,1.4
JC 09,JC 10,中央快速線,1.9
JC 10,JC 11,中央快速線,1.9
JC 11,JC 12,中央快速線,1.6
JC 12,JC 13,中央快速線,1.6
JC 13,JC 14,中央快速線,1.7
JC 14,JC 15,中央快速線,1.7
JC 15,JC 16,中央快速線,2.3
JC 16,JC 17,中央快速線,1.4
JC 17,JC 18,中央快速線,1.7
JC 18,JC 19,中央快速線,3
JC 19,JC 20,中央快速線,3.3
JC 20,JC 21,中央快速線,2.3
JC 21,JC 22,中央快速線,4.3
JC 22,JC 23,中央快速線,2.4
JC 23,JC 24,中央快速線,3.3
R 01,R 02,りんかい線,2.2
R 02,R 03,りんかい線,1.3
R 03,R 04,りんかい線,1.4
R 04,R 05,りんかい線,2.9
R 05,R 06,りんかい線,1.1
R 06,R 07,りんかい線,1.6
R 07,R 08,りんかい線,1.7
U-01,U-02,ゆりかもめ,0.4
U-02,U-03,ゆりかもめ,1.2
U-03,U-04,ゆりかもめ,0.6
U-04,U-05,ゆりかもめ,0.9
U-05,U-06,ゆりかもめ,3.9
U-06,U-07,ゆりかもめ,0.8
U-07,U-08,ゆりかもめ,0.6
U-08,U-09,ゆりかもめ,0.8
U-09,U-10,ゆりかもめ,1
U-10,U-11,ゆりかもめ,1.1
U-11,U-12,ゆりかもめ,0.7
U-12,U-13,ゆりかもめ,0.7
U-13,U-14,ゆりかもめ,0.8
U-14,U-15,ゆりかもめ,0.5
U-15,U-16,ゆりかもめ,0.7
データ取り込み
- ブラウザでNeo4jのWebコンソールを開き、コマンドラインに以降のコマンドを張り付けて実行します。
//CSVファイルから駅ノードを登録
LOAD CSV WITH HEADERS FROM "file:///railway_node.csv" AS row
CREATE (n:Station)
SET n = row;
//ナンバリングのインデックスを作成
CREATE INDEX ON :Station(numbering);
//CSVファイルから駅間エッジを登録
LOAD CSV WITH HEADERS FROM "file:///railway_edge.csv" AS row
MATCH (p1 {numbering: row.numbering_a }), (p2 {numbering: row.numbering_b })
CREATE (p1)-[r:Connect]->(p2)
SET r.distance = toFloat(row.distance), r.line = row.line;
//同名駅の乗り換えエッジを登録
MATCH (p1:Station),(p2:Station)
WHERE p1.rawname = p2.rawname AND p1.numbering <> p2.numbering
AND NOT (p2)-[:Transfer]->(p1)
CREATE (p1)-[:Transfer{TransferCost:1}]->(p2);
//乗り換え駅として案内されている乗り換えエッジを登録(一部)(一行ずつ実行する)
MATCH (p1:Station{rawname:'溜池山王駅'}),(p2:Station{rawname:'国会議事堂前駅'}) CREATE (p1)-[:Transfer{TransferCost:1}]->(p2);
MATCH (p1:Station{rawname:'赤坂見附駅'}),(p2:Station{rawname:'永田町駅'}) CREATE (p1)-[:Transfer{TransferCost:1}]->(p2);
MATCH (p1:Station{rawname:'後楽園駅'}),(p2:Station{rawname:'春日駅'}) CREATE (p1)-[:Transfer{TransferCost:1}]->(p2);
//乗り換えコストを更新する(一部)
//武蔵小杉駅の南武線―横須賀線・湘南新宿ライン乗り換え
MATCH (p1:Station)-[r:Transfer]-(p2:Station)
WHERE p1.numbering = 'JN 07' AND p2.numbering IN ['JO 15', 'JS 15']
SET r.TransferCost = 10.0;
//大井町駅のりんかい線―京浜東北線乗り換え
MATCH (p1:Station)-[r:Transfer]-(p2:Station)
WHERE p1.numbering = 'R 07' AND p2.numbering = 'JK 19'
SET r.TransferCost = 5.0;
乗り換えコストについては、「普通に乗り換えができる(コンコースへ出て、別ホームへ移動する)なら1.0」、それ以外に移動距離が長いなど乗り換えの負担が大きければ2.0以上というようなイメージです。
検索する
例として、新横浜駅から渋谷駅まで行く場合の最短経路を考えます。
最小駅数の経路と、最短営業キロの経路の2つのケースで検索します。
ケース1 最小駅数で到着する経路を探す
結果をグラフで表示
MATCH sp = shortestPath((start:Station{rawname:'新横浜駅'})-[*]-(end:Station{rawname:'渋谷駅'}))
WITH sp, LENGTH(sp) AS 駅数
RETURN sp ORDER BY 駅数 ASC LIMIT 1;
利用駅と総営業キロを表示
MATCH path = shortestPath((start:Station{rawname:'新横浜駅'})-[rels*]-(end:Station{rawname:'渋谷駅'}))
RETURN [p IN NODES(path) | p.name] AS `利用駅(通過駅含む)`,
SIZE(NODES(path)) AS 駅数,
REDUCE(sum = 0, r in rels | sum + CASE WHEN r.distance IS null THEN 0 ELSE r.distance END) AS 総営業キロ
ORDER BY 駅数 ASC LIMIT 1;
乗り換え回数、乗り換えコストを表示
MATCH path = shortestPath((start:Station{rawname:'新横浜駅'})-[rels*]-(end:Station{rawname:'渋谷駅'}))
RETURN REDUCE(sum = 0, t in [p IN RELATIONSHIPS(path) | CASE WHEN type(p)='Transfer' THEN 1 ELSE 0 END ] | sum + t) AS 乗り換え回数,
REDUCE(sum = 0, r in rels | sum + CASE WHEN r.TransferCost IS null THEN 0 ELSE r.TransferCost END) AS 乗り換えコスト
ORDER BY 乗り換え回数 ASC LIMIT 1;
ケース2 最短営業キロで到着する経路を探す
Neo4jグラフアルゴリズムについてはこちら。
このクエリーは駅名を一覧で表示するもので、残念ならが結果のパスをグラフで表示できるものではないです。
MATCH (start:Station{numbering:'JH 16'}),(end:Station{numbering:'JY 20'})
CALL algo.shortestPath.stream(start, end, 'distance', {defaultValue:0.0})
YIELD nodeId, cost
RETURN algo.asNode(nodeId).name AS name, cost
なお、駅名で指定すると複数パスの結果が連続して出てくるので、ここではナンバリングを指定してノードを1つに固定にしてます。
参考までに、次のようなクエリーを書くとノードはグラフで表示できます。Browser Settings
でConnect result nodes
を有効にしておくとエッジも表示されますが、結果とは別のエッジがある場合はそれも出てきます。
MATCH (start:Station{numbering:'JH 16'}),(end:Station{numbering:'JY 20'})
CALL algo.shortestPath.stream(start, end, 'distance', {defaultValue:0.0})
YIELD nodeId, cost
WITH COLLECT(nodeId) AS nlist
MATCH (n) WHERE id(n) IN nlist
RETURN n