見出し画像

7月の月曜日夕方は、雨が降っていたら自動車の運転に注意! データアナリストへの道#9

デジテック for YAMAGUCHI 運営事務局 兼 Y-BASEスタッフのハラマルです。
先日、世帯全員の所得証明書を取る必要があったのですが、マイナンバーカードを使ってコンビニで交付できるという話を聞いてチャレンジしてみました。すると、コンビニでは個人ごとにしか交付できないことが分かり、市役所窓口なら世帯全員分1通200円で済むのに、人数×200円が必要なのか!と思ったら、所得がない子ども分は交付ができませんでした。う~ん、このモヤモヤは何でしょうね!?公式HPにも注意書きがなかったので、皆さんも気を付けてください!

さて、「山口県オープンデータカタログサイト」は日々(と言ったら大げさですが)進化しています!先日は、「交通事故データ」が仲間に新しく加わりました。早速、このデータの可視化に挑戦してみます!

データの取得と整理

「交通事故データ」を開いてみると、いろいろな情報が詰まっており、データ形式も整理されている印象を受けます。期待大ですね。
2020年と2019年が別データとしてありますが、説明文は「山口県内で死傷者があった交通事故です。データについては①交通死亡事故、②全交通事故、に分けています。 主に以下の項目により整理したものとなります。 管轄警察署、事故内容、死者数、負傷者数、路線、市町村名、発生日時、昼夜別、道路形状、事故類型、当事者の年齢層、当事者の種別(大型貨物、普通乗用車等)、当事者の損傷程度、緯度経度。」と同じ文章が書いています。
お、これは同じデータ形式なのか?ということで、両方ダウンロードして、くっつけることにします。

ダウンロードしたデータ

おや?2年分のデータをくっつけてみると、途中の列から入っているデータが全然違います。あ、「交通規制」という項目が、2020年にあって2019年にはないようです。ここでズレが生じていますね。
ということで、2019年に1列挿入して、2020年と列を合わせて、再度ガッチンしてみます。

さて、まだデータ整理作業が残っています。実は、Tableauに接続した後でうまくいかなかったので気づいたのですが。。。
まず、死者数・負傷者数が、文字列で入力されていますので、これをExcelの機能で「数値に変換」しておきます。

次に、発生日時が、「年」(H列)、「月」(I列)、「日」(J列)の項目に分けられて文字列で入力されていますので、これをくっつけて日付データにしていきます
このやり方、分からずに苦労しました。ネットで見つけた方法をいくつか試しましたが、うまくいかないものもありました。

今回のケースの正解(と思われるの)は、TEXT関数を使った方法でした。TEXT関数には二つの引数がありますが、第一引数には、「年」と「月」と「日」のセルを「&」でつなぎます。これで、8桁の数字になります。
次に、第二引数は表示形式の設定になるので、「"0000!/00!/00"」と入力します。これで、yyyy/mm/dd形式で表示されるそうです。
最後に、このTEXT関数は文字列になっているので、これに*1をすることでシリアル値(数値)にします。すごくよく考えられている方法ですね~。
「=TEXT(H2&I2&J2,"0000!/00!/00")*1」というカンジです!

また、発生件数を数えたいので、件数という項目を作って、全ての行に1を入力しました。これは正しい方法なのか?まだよく分かりませんが、こうすると、後で集計ができました。

これで準備が完了ですね。

データの可視化

交通事故の発生箇所

では、データが準備できたら、最初にやるのは、マッピングですね。その結果がこちら!

交通事故発生箇所(2019年・2020年)

え!?すごいたくさんありますね。山陽側は、ほとんどの道路にプロットされていませんか?2年間でこんな量になるの?
Y-BASE周辺にズームしてみると、こんなカンジです。

上図をズームした様子

ここまでアップにすると、あそこの交差点の近くで多いとか、すごく具体的になってきますね。これは、思っていたよりもかなり多い印象です。
自宅周辺も調べてみたくなりますね。

今回はたくさんのデータがあるので、マッピングもし甲斐があります!次は、天候別に色分けしてみます。

天候別の交通事故発生箇所

ちょっと数が多すぎでマッピングでは分析が難しいかもしれませんね。これから見て取れる特徴とすると、なぜか山陰側の方は晴れの日の方が交通事故が多いようです。
これはちょっと意外じゃないですか?雨とか雪の方が多いのかなと思ったのですが。
ん?角島周辺も晴れの日が多い?ということは、もしかして、休日に県外の方などがドライブに来ていて、不慣れな道路で事故になっているとか?

では、次は、曜日別にしてみましょう。土日だけ色を付けてみます。

曜日別の交通事故発生箇所

ん?山陰側も土日に集中しているわけではないですね。晴れの日ばかり=休日のドライブという仮説は、短絡過ぎたようです。

いずれにしろ、県全体となると、マッピングしたものを俯瞰するだけでは特徴を捕まえるのは難しいかもしれませんね。もう少し、地域を絞って見てみると、特徴が見えてくるのかもしれません。

データ分析の条件(気づき)

さて、この作業をやっていて気づいたことがあります。
交通事故ということは、必然的に、交通量が多いところの方が多くなる傾向があるのでは?
ですが、次に気づいたのは、じゃあ、どうやって平準化して比べられるんでしょうか?難しいな~と。

事故の発生件数の分母は何でしょうか?
その地域での自動車の保有数、でもないですよね。それならデータとしては存在しそうですが、他の地域から車で来る場合も多いでしょうから。人身事故の場合は、歩行者の数も関係するでしょうし。
定点カメラでもあって、事故が発生した箇所ごとに、自動車や歩行者の通行数がカウントできるといいのですが、そのような都合の良いデータはありません。

また、天気別でみるときの分母も分かりませんね。
天気って、時間や地区によって変化する可能性があるので、そもそも、その事故発生個所では、晴れの時と雨の時の割合がどうなのか、知る手段がなさそうです。あったとしても、膨大なデータの分析が必要になる気がしますね。

ということで、「雨の日の方が事故をしやすい」という一般的な注意喚起をよく聞きますし、おそらく、事実そうだと思いますが、実際に事故が起きているのは晴れの日が多いようです。それは、多分、天気としては晴れの方が日数が多いからだと考えられます。
晴れている割合×晴れの日の事故割合 > 雨の割合×雨の日の事故割合
ということでしょうか。

今回は、交通量でも天気でも絶対数での比較になってしまいます。このことは最初によく頭に入れておかないといけません!

全体的な傾向

さて、毎回、マッピングを先にやってしまうので順番が前後してしまいますが、全体的な傾向を見てみる分析をしてみます。
まず、曜日・時間帯別で発生件数を見てみます。

曜日・時間帯別の交通事故発生件数

これはかなり特徴がありますね。予想していたよりも、はっきりと傾向が見えます。
月曜日から金曜日の朝7~8時台と、17時台に集中しているようです。これは通勤・通学の時間帯でしょうね。
月曜日の夕方は、17時の色の濃さと、18時以降のコントラストがはっきりしています。週の始まりの月曜日は、早く帰宅したいという意向が強いのでしょうか?その気持ち、よくわかります!
金曜日の夕方は18時も多いようです。土日がお休みの方は、少し気が緩むのでしょうか?その気持ちもよく分かります!

次に、月別・天候別でみてみます。

月別・天候別の発生件数

事故類型でみると、年間を通して「車両相互」が最も多いです。また、天候は晴れの日が最も多いですね。

車両単独や人対車両の交通事故は、月(時期)によってあまり大きな変化はないようです。冬の凍結などもありますが、そういった季節的な要因による増減よりも、季節に関係のない理由(通年で発生しうる理由)での事故が一定数発生している、ということのようです。

車両同士の事故は、これからの7月・8月は平均よりも事故が多い期間になるようですので要注意です!7月は雨や曇りの日の事故が多く、8月は晴れの日の事故が多いです。
この2ヵ月間の天気の傾向の違いは、元々、7月は雨や曇りの日が多いからかなのか、視界が悪くなるような雨が多いからなのか、もしかしたら、道路の除草が終わっていない時期だからかなのか?、とか、要因がちょっとわからないですね。
う~ん、もう一つ浮かんだ仮説が。よく見ると3月も件数が多いです。学生さんの長期休暇とも時期が同じなので、これはもしかして、新しく自動車運転免許を取得する方が多い時期なのでしょうか?

年齢別の傾向

そこで、月別の件数に、今度は年齢ごとに色分けしてみます。

月別・年齢別の件数(積み上げ棒グラフ)

お~、確かに、3月や7~9月に24歳以下が少し増えているようです。
が、全体に与える影響として、最も大きい要因は、この世代ではないようですね。このグラフだと少し見づらいですね。変形してみましょう。

折れ線グラフに変形したもの

変形してみると、世代間の動きがもっと分かりやすくなりました。まず、3月はほぼ全ての世代で事故が増えています
5月・6月は65~74歳の事故が年間で最も多い時期になっています。そして7月に急激に減っていますね~。
代わりに、7・8月は、それ以外の世代のほとんどが増える傾向にあるようです。
9月以降に多くの世代で事故数が減少する中、45~54歳は10月に急激に増えています
件数だけを見ていた時には気づきませんでしたが、世代間では大きな増減があるようです。

ただ、この要因はなんでしょうね~?むむむ。ちょっと分析しきれません。何か思い当たる理由はありますか?
新しく免許を取得した方に着目してしまい、すみませんでした。

方針転換

さて、今回は、この辺りでつまづいてしまいました。
特徴がある動きが見つかったものの、何でそうなっているのか?という理由が思い付きません。これは困りました。

ちょっと方針転換して、理由の追求ではなく、現状がどのような傾向になっているのか整理して、注意喚起できないものかと。

7月に注意すること

さて、先ほど見たように、7月は雨天・曇天時の車両相互の事故が多くなっていました。
理由は、、、ちょっと分からないのですが、どのような傾向になっているのか見てみます。

まず、曜日・時間帯別です。

曜日・時間帯別発生件数(7月の雨天・曇天時)

あら。月曜日の17時台に集中しているようです!
次に多いのが、土曜日の、これも17時台です!

次に、発生個所をマッピングしてみました。県西部と中央部に多いようですので、少し箇所が分かりそうな縮尺を掲載しておきます。

7月雨天・曇天時の車両相互事故発生個所
7月雨天・曇天時の車両相互事故発生個所

まとめ

今回扱ったデータは、平準化して比べるのが難しかったので、絶対数での比較になりました。
それが影響したからだと思いますが、実は、事故発生件数は雨の日よりも晴れの日の方が多いという結果になりましたし、世代間の増減要因の分析が難しかったです。

今回、特に感じたのは、なぜこういう動きになっているのか?ということをデータから読み解く「仮説力」が重要だということは、頭では知っていましたが、身をもって経験できました。
仮説が作れないと、結果が、全く腑に落ちません。モヤモヤしたままです。

なので、理由は分からないけれど、こういう状況になっていますよ、というお知らせをすることにしました。
それによって、7月の月曜日に雨が降っていたら夕方の自動車運転には注意しないといけないといった注意喚起ができますし、もしかしたら、他の方が原因を見つけてくれるかもしれません。

ひょっとして、何かの役に立つかも?と、自分をごまかしてみましたが、やっぱり悔しいので、この交通事故のデータ分析、再チャレンジしてみようと思います!