インド政府投資ポータルのプロジェクト19,889件を41項目に
インド全土の投資プロジェクトが掲載される政府ポータルから全プロジェクトを集め、散らばっていた詳細情報を41項目の表一枚にまとめました。担当者が使えるよう実行ファイルで引き渡しました。
収集件数
以前
プロジェクト個別の照会
以後
19,889件・41項目
背景
インドの投資プロジェクト情報は、政府が運営するIndia Investment Gridに公開されています。 問題は、それがプロジェクト1件につき1ページずつ散らばっていることです。どの州でどの 分野にどれだけの資金が動いているかを見るには、ページを1枚ずつ開かなければなりませんでした。
現場で見たこと
研究に必要なのは個別プロジェクトではなく全体の分布でした。ところがポータルは個別 照会を前提に作られているため、分野別・段階別に見るには、人がまず全部書き写さなければ なりませんでした。プロジェクト数を考えれば、その作業は着手できない種類の仕事でした。
定義した問題
集めることより項目を合わせることのほうが難しい仕事でした。プロジェクトごとに埋まっている 項目が違い、事業費は通貨と単位が混ざっており、同じ意味の値が別の名前で入っていました。 表一枚にするには、この違いを先に整理しなければなりませんでした。
作ったもの
- 全プロジェクトの収集 — 41セクターにわたるプロジェクトを漏れなく集めました
- 41項目への正規化 — セクター・サブセクター・事業段階・総事業費・州・実施方式・ 推進タイプ・完工予定日など、散らばっていた値を同じ列に揃えて収めました
- 実行ファイルでの配布 — 担当者がPython環境なしで実行できるように引き渡しました
防いだもの
これだけの量を受け取れば必ず一部は失敗します。問題は失敗するかどうかではなく、失敗した ものを後で見つけられるかです。
- 失敗したアドレスを別に残します — リクエストが途切れたり応答が来なかったりしたら、 そのアドレスを別ファイルに記録します。収集は続行されます
- そのリストだけを再取得するスクリプトも一緒に作りました — 全体を最初からやり直す 必要はありません。2回目の収集は失敗した分だけが対象です
- 再取得の結果にも日付を付けて保管します — 何をいつ埋めたかが残ります
- 同時に12件ずつ受け取りつつ、リクエストごとに時間制限を設けます — 1件が応答しなくても 全体が止まりません
結果
19,889件を41項目に整理しました。 そのうち総事業費の値が確認できたのは19,087件です。
セクター別では道路・高速道路が4,180件と最も多く、上下水道・廃棄物2,264件、不動産1,480件、 保健1,271件、教育954件、鉄道920件の順でした。事業段階は開発中・実施中・完了など 5種に分かれます。
同じ方法で作った他の仕事はウェブデータ収集にまとめています。
出典
納品成果物のExcel