看板 MRT 關於我們 聯絡資訊
網誌好讀版:https://ftt.tw/Zwypd 回顧 上一篇和大家介紹政府公開資料的捷運分時資料, 並將各站點周一到周日各小時的人流資訊透過熱圖(heatmap)來呈現, 並拿旅次輛前三名的台北車站、西門、市政府以及比較特別的動物園站來做說明。 可以發現有些站點的人流模式相似、有些卻差距甚大。 那麼有沒有方法可以透過這些人流變化的資料將站點做分類? 這一篇將使用K-means Clustering來替全部108個站點的進、出站的人流資料做分類。 https://imgur.com/2SQLXcd K-means Clustering K-means Clustering (K平均演算法),是屬於非監督式機器學習的一種演算法。 它可以替一組資料做快速分類(可以參考wiki或這裡)。 以我們的例子來說,可以替我們將108站的捷運的人流資料依照變化模式分成不同的類別 本篇將會以下面的流程來操作: 1. 將108個站點的進站人流分成4個類別(ex:進站分類0,1,2,3) 2. 將108個站點的出站人流分成4個類別(ex:出站分類0,1,2,3) 3. 依照各站的進、出站類別進行分類,產生最終的站點分類(ex: 0_0,1_2…),再給予新 的代號(A,B,C) https://imgur.com/YZcf7XZ 分類結果 進站 由於台北捷運各站點人流的實際數值差距甚大(台北車站每日30多萬人 vs 動物園1.4萬人), 所以進行K-means分析前先將全部人流資料進行標準化(min max normalization),故 以下流量值為各站對各站最大值的比例,非實際數值。 先從進站來看,藍色實線是每個分類(cluster)內,站點的人流平均變化;淡灰色是該分 類全部站點。 https://imgur.com/rTfodlM 如上圖所示,分類1(右上)平日尖峰出現在上班時刻,其他時段包含假日皆少於0.4; 分類3(右下)則是相反的類型,平日高峰出現在下班時間,其他時間包含假日皆少於0.4。 分類0(左上)的平日尖峰出現在下班時間,同時上班時間也有超過0.5的水準(1.0 vs 0.5) 假日的尖峰出現在下午時段,達0.7左右; 分類2(左下)相較於分類0(左上),高峰較為平均的出現在上下班時間(1 vs 0.7), 但是假日人潮相對較少,最高約0.5左右,但仍高於分類1(右上)和分類3(右下)。 進站的分類結果如下: https://imgur.com/3YdZZGa https://imgur.com/byd4pfs https://imgur.com/sRE24tu https://imgur.com/X0QBDLn 0: 上下班尖峰+假日,包含西門、台北車站、忠孝新生、忠孝復興、忠孝敦化、 國父紀念館、市政府、松山機場、劍南路、公館、台電大樓、中正紀念堂、 中山、古亭、東門、大安森林公園、雙連、劍潭、士林及新北投共20站。 1: 上班尖峰 ,包含頂埔、永寧、土城、海山、亞東醫院、府中、新埔、 江子翠、木柵、萬芳社區、萬芳醫院、辛亥、麟光、文德、內湖、大湖公園、 葫洲、東湖、新店、新店區公所、七張、小碧潭、萬隆、南勢角、景安、 永安市場、頂溪、台北橋、菜寮、三重、頭前莊、新莊、丹鳳、迴龍、 三重國小、三和國中、徐匯中學、三民高中、蘆洲、明德、唭哩岸、 北投、復興崗、竹圍及紅樹林等45站。 2: 上下班尖峰 ,包含板橋、龍山寺、永春、後山埤、南港、南港展覽館、 動物園、六張犁、科技大樓、大直、大坪林、景美、松山、大橋頭、輔大、 圓山、芝山、石牌、奇岩、忠義、關渡、淡水共22個站。 3: 下班尖峰,包含善導寺、昆陽、中山國中、西湖、港墘、南港軟體園區、 小南門、北門、南京復興、台北小巨蛋、南京三民、松江南京、行天宮、 中山國小、民權西路、先嗇宮、象山、台北101/世貿、信義安和、大安、 台大醫院等21個站點。 若將分類結果呈現於地圖上, 可以發現進站人潮出現在平日上下班和假日(進站上下班+假日,分類0) 的站點全部位於台北市且主要集中在台北市中心區, 包含板南線西門站往市政府站的大部分站點; 松山新店線從公館站到中山站大部分站點; 淡水信義線在本類站點包含大安、東門、劍潭、士林及新北投; 文湖線有劍南路及松山機場2站。 https://imgur.com/WjcA4sn 進站人潮出現在下班時刻(進站下班尖峰,分類3)的站點,如下圖右所示, 主要出現在台北市區內、板南線以外的大部分站點, 以及文湖線的港乾、溪湖及南港軟體園區3站; 中和蘆洲線的先嗇宮站是本類別唯一出現在新北市的站點。 進站人潮出現在上班時刻(進站上班尖峰,分類1)的站點,如下圖中所示, 主要分布在離市中心較遠的地區,淡水信義線出現在明德站以北; 中和蘆洲線出現在台北橋站以西、頂溪站以南; 板南線出現在江子翠以西; 文湖線出現在麟光站以南以及文德站到東湖站等5站之間。 https://imgur.com/kiRInKR https://imgur.com/v3ZMfvq https://imgur.com/kLjtWET 屬於上下班時段皆出現人潮的站點傾向於出現在前2類(上班尖峰及下班尖峰) 的交界區域,如上圖左所示,大橋頭、龍山寺、科技大樓及六張犁屬於此類; 或是出現於終點站,如淡水、松山、動物園; 或是其他類型, 如輔大站、板橋站、圓山站、大直站以及芝山站以北的5站,整體上來看較無明顯的脈絡。 出站 出站的部分,如下圖所示, 分類1(右上)和分類2(左下)為相對的兩種類型, 一個尖峰時間出現在下班時刻(分類1), 一個在上班時刻,比較不一樣的是在假日的部分, 高峰出現在下班時刻的分類1在假日的下午仍有一段高峰出現(約0.5), 而高峰出現在上班時刻的分類2在假日只有在中午有稍微熱絡一些(約0.3)。 分類0(左上)和分類3(右下)在平日的上下班皆出現高峰, 分類0最大值在下班時刻,上班時刻約為0.6、假日最高約0.5~0.6; 分類3在平日的高峰更平均的分配在上下班時間, 假日的部分最高超過0.6,比分類0更為熱絡。 https://imgur.com/sD1wTvU 出站類型結果如下: 0:上下班尖峰, 包含頂埔、永寧、板橋、龍山寺、永春、後山埤、南港、木柵、 六張犁、大直、文德、新店、七張、大坪林、景美、台電大樓、松山、大橋頭、 三重、頭前莊、輔大、劍潭、芝山、明德、石牌、唭哩岸、北投、復興崗、 紅樹林及淡水等30個點。 1: 下班尖峰,包含土城、海山、亞東醫院、府中、新埔、江子翠、萬芳社區、 萬芳醫院、辛亥、麟光、內湖、大湖公園、葫洲、東湖、新店區公所、小碧潭、 萬隆、南勢角、景安、永安市場、頂溪、台北橋、菜寮、新莊、丹鳳、迴龍、 三重國小、三和國中、徐匯中學、三民高中、蘆洲及竹圍等32個站。 2: 上班尖峰 ,包含善導寺、國父紀念館、市政府、昆陽、南港展覽館、 科技大樓、中山國中、西湖、港墘、南港軟體園區、中正紀念堂、小南門、 北門、南京復興、台北小巨蛋、南京三民、松江南京、行天宮、中山國小、 民權西路、先嗇宮、象山、台北101/世貿、信義安和、大安、台大醫院、 雙連、奇岩、忠義及關渡共30個站點。 3: 上下班尖峰+假日 ,包含西門、台北車站、忠孝新生、忠孝復興、 忠孝敦化、動物園、松山機場、劍南路、公館、中山、古亭、東門、 大安森林公園、圓山、士林、新北投等16個站。 https://imgur.com/ufDzRvd https://imgur.com/vHBj96q https://imgur.com/2KPAGcY https://imgur.com/dZ6Ld7l 若將分類結果呈現於地圖上, 可以發現出站人潮出現在平日上下班和假日(出站上下班+假日,分類3) 的站點全部位於台北市。 主要出現在市中心區域,市區北側的站點有圓山、士林、及新北投3站; 文湖線有松山機場及劍南路2站;市區南側有公館站及動物園2站。 https://imgur.com/C0TTDkj 出站人潮出現在下班時刻(出站下班尖峰,分類1)的站點,如下圖右所示, 主要出現在新北市,中和蘆洲線出現在台北橋站以西、頂溪站以南; 板南線出現在江子翠站以南;松山新店線在萬隆站以南; 文湖線出現在麟光站以南以及內湖到東湖之間的4站。 出站人潮出現在上班時刻(出站下班尖峰,分類2)的站點,如下圖中所示, 主要集中出現在台北市區,北側有關渡、忠義及奇岩3站; 文湖線有港乾、西湖、南港軟體園區及南港展覽館4站。 先嗇宮站為本類唯一位在新北市的站點。 https://imgur.com/FTzPuvh https://imgur.com/Tcj6Cn6 https://imgur.com/Oj6DAPz 上下班時段皆出現出站人潮的站點(上班尖峰及下班尖峰,分類0)位置如上圖左所示, 如同進站的上下班尖峰,傾向於分布在市中心以外的地區, 此外單從捷運資料來看並無明顯脈絡可循。 彙整 最後將4種進站分類和4種出站分類兩兩結合後,產生的9種組合, 再依人流出現時間分成居住、工作以及假日休閒3個面向,結果如下表: https://imgur.com/UZRJxsu 將各分類站點呈現於地圖上: https://imgur.com/vMVaH1Z https://imgur.com/TtlqPQx https://imgur.com/DDB7gFW https://imgur.com/huHFPvP #將石牌站修正為明德站(感謝Tudo11927指正) https://imgur.com/gHHKhrC https://imgur.com/1RbnZFa https://imgur.com/NbLHNy6 https://imgur.com/RdhWIjz https://imgur.com/djq1LF0 關於"D類變形" 由"上下班尖峰"以及"上下班尖峰+假日"組合成的G類及H類的車站共有4站, 分別為動物園、圓山、劍潭及台電大樓。 先來看H類的台電大樓及劍潭2站, 下面將人流變化以熱圖及折線圖2種方式來呈現(下圖左、中), 並和D類的西門站(下圖右)做比較: https://imgur.com/5zjHh9V https://imgur.com/oNhcvW7 https://imgur.com/z0QRDfA 可以發現2站在假日的進出人流皆高於該分類平均水準, 劍潭站甚至為最大值。若將該2站與屬於D類的站點做比較, 可以發現其人流變化其實是相似的,熱門時段同樣出現在上下班時間, 且假日也有一定的人流。 再來看G類的動物園及圓山: https://imgur.com/A1PQ22V https://imgur.com/wz7Ypoc 可以發現圓山站的模式與D類站點也是類似的;但是動物園卻整個長歪。 小結 本篇將各捷運站點的分時人流資料切成進、出站2類, 並透過K-means Clustering將這2類資料各分成4個分類, 最後再將各站點的進、出站分類兩兩組合後,共產生9種分類, 而這9種分類可以進一步歸納為工作、居住以及假日休閒3種面相。 不過在觀察各分類站點的人流變化後發現, G類及H類站點中的台電大樓、劍潭以及圓山,其人流變化與D類其實是相似的, 故將其歸納為D類的變形;而動物園則是在台北捷運108站中, 真正與眾不同(歪掉)的類型。 9種分類分布圖: https://imgur.com/xI6rShR -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.136.55.174 ※ 文章網址: https://www.ptt.cc/bbs/MRT/M.1544841817.A.7A7.html
kuso10582: 厲害... 12/15 10:51
mattc123456c: 動物園站本來就是為動物園而蓋,會特別歪好像也是當 12/15 11:17
mattc123456c: 然的事 12/15 11:17
hicker: 不錯的分析 12/15 11:20
Stan6003: 推 12/15 11:34
ping0107: 推 12/15 11:41
hansopp: 太強了 這是論文初稿吧 12/15 12:29
omkizo: 論文等級的東西…… 12/15 12:53
charlie0505: 推 12/15 13:10
u8572535: 有意思的分析 12/15 16:01
ghan: 推 12/15 16:29
shter: 南港跟南港展覽館是上下班尖峰,南軟是下班尖峰!? 12/15 16:45
shter: 永寧跟頂埔是居住大於工作,南港展覽館則是工作大於居住 12/15 16:46
shter: 板南線的兩端轉乘站看起來模式不一樣 12/15 16:47
Cascadia: 推 12/15 17:49
Cascadia: 南港應該是台高鐵的轉乘人潮,才導致上班時間進站人數多 12/15 17:50
dogluckyno1: 推推 分析的很有趣 12/15 18:09
su31tak: 推,太猛了 12/15 18:13
Metro123Star: 推 12/15 18:44
Tudo11927: 推 12/15 19:57
kewang: 推論文! 12/15 20:00
Tudo11927: https://imgur.com/5jvl8Lt 這張的明德誤植為石牌了 12/15 20:06
感謝提醒,已修正! ※ 編輯: unhumanWu (220.136.55.174), 12/15/2018 20:58:47
shieldsky: 好專業!方便請問是用什麼程式去做分析的嗎? 12/15 21:13
jh961202: 樓主484主修BigData? 12/15 21:35
MarcoChieh: 港"墘" 音同前 12/15 21:43
PHb787: 推專業分析 12/15 22:48
harry9277180: 推 12/15 22:57
c3035281: 居然在這邊看到k-means哈哈哈 12/15 23:18
kkStBvasut: 輔大是因為同時有當地人上下班&學生上下課兩種反方向 12/16 06:52
kkStBvasut: 的運次吧 12/16 06:53
kkStBvasut: 動物園站也分的到一點點政大的運量(轉236) 12/16 08:12
vollenca: 大推專業分析文 12/16 09:07
heremattis: 專業分析文! 12/16 09:15
kenliu100: 運輸年會應該投稿了吧XD 12/16 11:24
Tudo11927: https://imgur.com/TtlqPQx 幫Macro大補圖 12/16 16:08
Tudo11927: 港乾(X) 港墘(O) 12/16 16:08
taipeiguyptt: 之前上課做過簡單分類,大大這個詳細很多 12/16 19:19
darice816: 三重站可能與機捷轉乘比較相關(?) 12/16 22:13
abc480528: 推啊 12/17 01:09
short0909: 推 12/17 01:29
treasuredady: 推分析 12/17 09:23
treasuredady: 機車教授:區分完之後,然後呢?要做什麼 12/17 09:23
hicker: 研究的樂趣就在於無所為而為 12/17 12:39
hicker: 即便是自得其樂 也是樂趣 12/17 12:40
kutkin: 也不算機車 就不知道這應用性 12/17 15:38
kutkin: 有些站會整天都有人因為他是捷運公車轉運 12/17 15:44
crazyplayer: 狂 12/18 22:38
sbtiagr: 推 這個其實很有價值 可以理解台北的空間分布 12/18 23:24
j1992624: 朝聖 12/19 18:12
vercetti: 我看了什麼… 12/20 10:17
lina7inverse: 絕對不只是個推啊啊啊 12/20 20:00
kevinheyo: 先嗇宮是因為湯城吧 12/22 22:11