国勢調査から5歳階級の人口推移を調べる

日本人口の年齢階級推移(国勢調査より筆者作成)

 人口統計は最も重要な基幹統計の一つである.総務省の e-Stat は確かに有用であるが,かゆいところに手が届かない.例えば「市区町村ごと,年齢5歳階級ごとの人口構成の国勢調査ごとの推移を知りたい」という要求には全く無力である.

 主として技術的な理由によるものと,統計調査の粒度の細かさによる.技術的な理由としては,データベースの画面表示セル数の上限を容易に超えてしまうデータ量になってしまうことである.しかし,根本的な理由は調査の粒度の細かさである.

 2005 年以前と 2010 年以降とでは調査の精度が違う.今後は高精度なデータファイルが e-Stat に掲載されていくものと思われるが,2005 年以前に関しては都道府県より細かい粒度は存在しない.そこを求めると手作業になってしまい,現実的ではない.国立社会保障・人口問題研究所ならデータを持っているかもしれない.

 2020 年は国勢調査の年にあたる.総務省にはできるだけ細かい粒度でのデータ掲載を望むものである.

“国勢調査から5歳階級の人口推移を調べる” の続きを読む

PowerPivotで100万件超えのデータを取り出す

「Power Pivot」タブ「データモデル」から「管理」

 EXCEL のワークシートの仕様上,100 万件を超えるデータは扱えない.これは大規模なデータを扱う際の制約である.180万件のデータをPower Queryで処理してEXCELがオーバーフローした話 でも述べたが,この制約を乗り越えてデータをインポートするにはデータモデルに読み込むほかはない.

 SQL Server で PowerQuery が使えればこういった制約を回避できるのだが,ないものは仕方がない.今回は PowerPivot を用いてデータモデルに蓄積したデータを取り出す方法を見つけたので備忘録として記す.

“PowerPivotで100万件超えのデータを取り出す” の続きを読む

SQL*Plus で ORACLE DB からデータを抽出する際のお作法

 基幹データベースが Oracle DB の場合,最も基本的なデータ抽出方法の一つに SQL*Plus がある.SI Object Browser などもあるが基本有償で,個人で購入するには少し敷居が高い.

 SQL*Plus でどこまでできるかは勉強中のため未知数だが,あらかじめ .sql ファイルを作っておいて実行するなら心理的な障壁も下がる.

“SQL*Plus で ORACLE DB からデータを抽出する際のお作法” の続きを読む

Windows 上の SQL Server Management Studio から Ubuntu 上の SQL Server にデータベースを作成し,テーブルを挿入する

 Windows 環境にインストールした SQL Server Management Studio から Ubuntu にインストールした SQL Server にデータベースを作成し,テキストファイルからインポートしてテーブルを作成する方法を紹介する.

 インポートするテキストファイルは今回は日本標準食品成分表 2015 年版を使用する.第一正規形であれば何でもよい.

“Windows 上の SQL Server Management Studio から Ubuntu 上の SQL Server にデータベースを作成し,テーブルを挿入する” の続きを読む

IPAQガイドラインをクエリで表現するには

国際標準身体活動質問表

 今回は泥臭い話になる.どんなプログラミングでも同じだが,一発で意図通りに動くことはまずない.試行錯誤の末,ようやくこんなものかという出来上がりである.SQL においても同じだ.クエリでは NULL の扱いが難しい.そんなところを感じ取ってもらえればと思う.

“IPAQガイドラインをクエリで表現するには” の続きを読む

日本標準食品成分表2015をダウンロードし,データクレンジングを行う

 文部科学省には日本標準食品成分表のデータがある.食品の栄養素の計算に用いられるデータで,食品成分データベースやフィットネス,ダイエット関連アプリのデータベースの基本となっているものである.

 このデータは 5 年ごとに更新されており,最新のデータは 2015 年のものである.次の更新は 2020 年の予定である.今回の記事ではこのデータをダウンロードし,クレンジングを行う.

“日本標準食品成分表2015をダウンロードし,データクレンジングを行う” の続きを読む