SlideShare a Scribd company logo
1 of 15
公的統計擬似ミクロデータの
Rへの読込み
和田 かず美
本スライドは個人の発表用に作成したもので、必ずしも所属組織の見解などを示
すものではありません。
2012.12.01 第3回Japan.R LT大会
最近の流行り物
ちょっと手を出してみたい。
でも苦労はしたくない!
猫も杓子も
大きすぎても困るんだ!!!
2
そんな貴方に
いかがですか?
メモリ2GBのVistaでも
普通に読めました。
約3万2千レコード、197変数の
3
擬似ミクロデータとは?
• 統計調査の集計表から、乱数を用いて再現し
た擬似的な個別データ。
• (独)統計センターが平成16年全国消費実態調査
について作成し、HP上で無償にて試行提供中
(申出書の提出が必要です)。
• 利用要件
– 申出者及び利用者以外の者に利用させないこと
– 集計表から擬似的に作成したデータであるので、
分析結果は実証研究の結果と見なすことができな
いことを理解すること
– 利用者アンケートの提出
4
平成16年全国消費実態調査
総務省統計局が5年毎に実施。
世帯を対象に、家計の収入・支出及び貯
蓄・負債、耐久消費財、住宅・宅地など
の家計資産を総合的に調査。
標本の大きさ
二人以上の世帯 約5万5千、単身世帯 約4千
疑似ミクロデータは二人以上の勤労者世
帯データ約3万2千を収録。
調査の詳細は、http://www.stat.go.jp/data/zensho/2004/index.htm
5
http://www.nstac.go.jp
6
データ概要
7
本日はこの7つのzip
ファイルを使います
擬似ミクロデータ(パスワード解凍後)の
ファイル一覧
データレイアウトと符号表(Excelファイル) 8
データファイル(7分割のCSVファイル)
データファイルを
エディタで表示すると こんな感じ
9
内容の解釈には、
「符号表」との照合が必要
「擬似ミクロデータのRへの読込み」
- 作業の流れ -
① コンスタント作成(Excel作業)
データレイアウト付属の符号表(Excelファイル)を加工
して、 擬似ミクロデータを R に変数名を付加させながら
読み込ませるための情報ファイル(コンスタント)を作成
② コンスタント読込み ( R 作業)
③ データファイル読込み( R 作業)
作業フォルダから複数あるデータファイルの名前を取得
し、コンスタントを用いて、データファイルを連結させな
がら読み込む
10
カンマ区切りの固定長データ => Rへの読み込みに必要なのは「変数名」と、各変数
が数量データであるかカテゴリデータであるかを示す「型」だけ。
何かの役に立つこともあるので、ここでは参照用に「行番号」と「階層」、表示用
に「項目名」も残してみた。
紫色で囲んだ行
(「変数名」のある行)
を利用
11
符号表をExcelで表示すると こんな感じ
- EXCELでの作業手順 -
1. ヘッダより上の部分を削除
2. 「変数名」でソート、ブランク行削除
3. 「型」でソート、ブランクを2に書き換え
4. 「行番号」順に再ソート
5. 必要のない列を削除
6. ヘッダを半角文字に(オプション)
7. CSVファイルとして保存[ここでは code.csv]
12
① コンスタント作成
1 : 数量データ
ブランク: カテゴリデータ
Rに読み込むとブランクはNAに
化けるので2に書き換える
型
ようやくR② コンスタント読込み
~ EXCELで作ったCSVファイルの最後にはよくゴミがある~
13
rm(list=ls(all=TRUE)) # 作業領域のお掃除♪
setwd(“d:/giji/”) # カレントディレクトリの指定
cd1 <- read.csv("code.csv", header=TRUE)
a1 <- which(!is.na(cd1$no)) # コンスタントファイル末尾の
cd1 <- cd1[a1,] # ブランク行削除
tail(cd1) # cd1の末尾確認
no koumoku lvl type namae
192 517 土地家屋借金返済 4 1 Youto178
193 519 他の借金返済 4 1 Youto179
194 521 分割払・一括払購入借入金返済 4 1 Youto180
195 523 財産購入 4 1 Youto181
196 525 その他 4 1 Youto182
197 527 繰越金 3 1 Youto183
# 因子属性への変換抑制フラグ作成
ft1 <- rep(TRUE, dim(cd1)[1])
ft1[which(cd1$type == 2)] <- FALSE
③ データファイル読込み
~ 分割ファイルがたくさんあっても怖くない~
ようやくR
14
# 命名規則を指定してデータファイル名の一覧を取得
(f.list <- list.files(path=getwd(), pattern="*).csv"))
[1] "GIJI_2004zensho_dataset(00001~05000).csv"
[2] "GIJI_2004zensho_dataset(05001~10000).csv"
[3] "GIJI_2004zensho_dataset(10001~15000).csv"
[4] "GIJI_2004zensho_dataset(15001~20000).csv"
[5] "GIJI_2004zensho_dataset(20001~25000).csv"
[6] "GIJI_2004zensho_dataset(25001~30000).csv"
[7] "GIJI_2004zensho_dataset(30001~32027).csv«
dt1 <- do.call(“rbind”, lapply(f.list, read.csv, col.names=cd1$namae, as.is=ft1,
header=FALSE))
dim(dt1)
[1] 32027 197
save(cd1, dt1, file=“giji.Rdata”)
# データレイアウト情報cd1とデータdt1を今後の利用のためgiji.Rdataとして保存
この先の分析は皆様で
お楽しみください
擬似ミクロデータ利用上のご注意
• あくまで「擬似」データであるため、実証分析には
擬似ミクロではなく匿名データをご利用ください。
(ただし匿名データのご利用は学術研究・高等教育目的
に限られています。)
• 今後のためにアンケートにご協力いただければ幸いです。
• 再配布はご容赦ください。
• 無償サービスにつき、申し訳ございませんが個別のサ
ポートなどは行っておりません。
15

More Related Content

More from wada, kazumi

Rによる繰り返しの並列処理
Rによる繰り返しの並列処理Rによる繰り返しの並列処理
Rによる繰り返しの並列処理wada, kazumi
 
2018Rユーザ会用
2018Rユーザ会用2018Rユーザ会用
2018Rユーザ会用wada, kazumi
 
Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017wada, kazumi
 
Ⅲ. 資料編 2017
Ⅲ. 資料編 2017Ⅲ. 資料編 2017
Ⅲ. 資料編 2017wada, kazumi
 
Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017wada, kazumi
 
Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017wada, kazumi
 
2017Rユーザ会用
2017Rユーザ会用2017Rユーザ会用
2017Rユーザ会用wada, kazumi
 
Rデモ03_データ分析編2016
Rデモ03_データ分析編2016Rデモ03_データ分析編2016
Rデモ03_データ分析編2016wada, kazumi
 
Rデモ02_入出力編2016
Rデモ02_入出力編2016Rデモ02_入出力編2016
Rデモ02_入出力編2016wada, kazumi
 
Rデモ01_はじめの一歩2016
Rデモ01_はじめの一歩2016Rデモ01_はじめの一歩2016
Rデモ01_はじめの一歩2016wada, kazumi
 
統計環境R_データ分析編2016
統計環境R_データ分析編2016統計環境R_データ分析編2016
統計環境R_データ分析編2016wada, kazumi
 
統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016wada, kazumi
 
統計環境R_データ入出力編2016
統計環境R_データ入出力編2016統計環境R_データ入出力編2016
統計環境R_データ入出力編2016wada, kazumi
 
自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slideshare自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slidesharewada, kazumi
 
Rプログラミング03 データ分析編
Rプログラミング03 データ分析編Rプログラミング03 データ分析編
Rプログラミング03 データ分析編wada, kazumi
 
Rプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモRプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモwada, kazumi
 
Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編wada, kazumi
 
Rプログラミング02 「データ入出力編」デモ
Rプログラミング02 「データ入出力編」デモRプログラミング02 「データ入出力編」デモ
Rプログラミング02 「データ入出力編」デモwada, kazumi
 
Rプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモRプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモwada, kazumi
 
Rプログラミング01 はじめの一歩
Rプログラミング01 はじめの一歩Rプログラミング01 はじめの一歩
Rプログラミング01 はじめの一歩wada, kazumi
 

More from wada, kazumi (20)

Rによる繰り返しの並列処理
Rによる繰り返しの並列処理Rによる繰り返しの並列処理
Rによる繰り返しの並列処理
 
2018Rユーザ会用
2018Rユーザ会用2018Rユーザ会用
2018Rユーザ会用
 
Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017
 
Ⅲ. 資料編 2017
Ⅲ. 資料編 2017Ⅲ. 資料編 2017
Ⅲ. 資料編 2017
 
Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017
 
Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017
 
2017Rユーザ会用
2017Rユーザ会用2017Rユーザ会用
2017Rユーザ会用
 
Rデモ03_データ分析編2016
Rデモ03_データ分析編2016Rデモ03_データ分析編2016
Rデモ03_データ分析編2016
 
Rデモ02_入出力編2016
Rデモ02_入出力編2016Rデモ02_入出力編2016
Rデモ02_入出力編2016
 
Rデモ01_はじめの一歩2016
Rデモ01_はじめの一歩2016Rデモ01_はじめの一歩2016
Rデモ01_はじめの一歩2016
 
統計環境R_データ分析編2016
統計環境R_データ分析編2016統計環境R_データ分析編2016
統計環境R_データ分析編2016
 
統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016
 
統計環境R_データ入出力編2016
統計環境R_データ入出力編2016統計環境R_データ入出力編2016
統計環境R_データ入出力編2016
 
自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slideshare自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slideshare
 
Rプログラミング03 データ分析編
Rプログラミング03 データ分析編Rプログラミング03 データ分析編
Rプログラミング03 データ分析編
 
Rプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモRプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモ
 
Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編
 
Rプログラミング02 「データ入出力編」デモ
Rプログラミング02 「データ入出力編」デモRプログラミング02 「データ入出力編」デモ
Rプログラミング02 「データ入出力編」デモ
 
Rプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモRプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモ
 
Rプログラミング01 はじめの一歩
Rプログラミング01 はじめの一歩Rプログラミング01 はじめの一歩
Rプログラミング01 はじめの一歩
 

Recently uploaded

リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドKen Fukui
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドKen Fukui
 
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slidessusere0a682
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドKen Fukui
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfyukisuga3
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ssusere0a682
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドKen Fukui
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドKen Fukui
 

Recently uploaded (8)

リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
 
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
 

公的統計擬似ミクロデータのRへの読込み

Editor's Notes

  1. 匿名データとデータのつくりが同じ。 実際の匿名データよりは小さいが、レコード数約3万2千、197項目という大規模データなので、マイニングなどにも。 試行提供段階なのでご意見をいただきたい。
  2. 「型」には1かブランクが入っているが、使いやすいようにブランクを2に置き換える。
  3. メモリ2GBの32bitのVista機で実行。このくらいのデータ量であれば一気読みしても問題はない。 旧コード #カレントディレクトリから特定の命名規則に従うデータファイル名の一覧を取得 (f.list <- list.files(path=getwd(), pattern="*).csv")) n.file <- length(f.list) # データファイルの数をカウント # データの読込 dt2 <- read.csv(f.list[1], col.names=cd1$namae, as.is=ft1, header=FALSE) for (i in 2:n.file){ # ファイルの数だけループ d1 <- read.csv(f.list[i], col.names=cd1$namae, as.is=ft1, header=FALSE) dt2 <- rbind(dt2, d1) }