備忘録!!

面白いと思った記事や本を紹介したいと思います。

Rで空の行列を作る際の小ネタ(備忘)

昨日、Rを使ったデータ分析の授業で習った小ネタ(備忘メモ)

 

先生が「自分も最近までしらなかったんだけどね」との前置きで以下の記事を紹介してくれた 。

”PITFALL: Did you really mean to use matrix(nrow, ncol)?”

https://www.r-bloggers.com/pitfall-did-you-really-mean-to-use-matrixnrow-ncol/

”Best way to allocate matrix in R, NULL vs NA?”

https://stackoverflow.com/a/26724451

 

Rで空の行列を用意する際に、要素がすべてNAのものを作るのではなく、NA_real_ または NA_integer_ を用いるべきとのこと。

NAはlogicalなので、NA行列に数字を代入する際にはlogical -> numeric というcoercionが必要となる。

これはメモリの無駄遣いだよね、という話。 

 

正直現状のレベルではほぼ全く影響しないレベルの小ネタながら、Rの仕組みを理解する上では面白かった。

 

以下R-bloggersより引用。

 

Are you a good R citizen and preallocates your matrices? If you are allocating a numeric matrix in one of the following two ways, then you are doing it the wrong way!

x <- matrix(nrow=500, ncol=100)

or

x <- matrix(NA, nrow=500, ncol=100)

Because it is counter productive. And why is that?In the above, ‘x’ becomes a logical matrix, and not a numeric matrix as intended. This is because the default value of the ‘data’ argument of matrix() is NA, which is a logicalvalue, i.e.> x <- matrix(nrow = 500, ncol = 100)
> mode(x)
[1] "logical"
> str(x)
 logi [1:500, 1:100] NA NA NA NA NA NA ...

 

Why is that bad? Because, as soon as you assign a numeric value to any of the cells in ‘x’, the matrix will first have to be coerced to numeric when a new value is assigned. The originally allocated logical matrix was allocated in vain and just adds an unnecessary memory footprint and extra work for the garbage collector.
Instead allocate it using NA_real_ (or NA_integer_ for integers):x <- matrix(NA_real_, nrow=500, ncol=100)Of course, if you wish to allocate a matrix with all zeros, use 0 instead of NA_real_ (or 0L for integers). 

 

匿名化データのre-identification

私は現在北米の大学でMBAコースに在籍中なのですが、MBAとは別に統計学部のData Analysisという講義を履修しています。この授業はまだ3回目ながらなかなか面白く、とても楽しみにしています。

 

今回の講義では、図書館のスタッフからデータ分析にまつわる様々な注意や便利なツールの紹介があったのですが、そこで引用されていた匿名データの個人情報特定に関するデータが面白かったので以下備忘メモ。

 

米国における1990年の国勢調査データと各州が研究者向けに提供している医療データを突合することで、匿名化された医療データの個人を特定することができてしまったとの指摘。なんと、①ZIPコード(5桁の郵便番号)、②性別、③生年月日の3つの情報だけで87%の個人は特定されてしまったそうです。

It was found that 87% (216 million of 248 million) of the
population in the United States had reported characteristics that likely made them unique based only on {5-digit ZIP, gender, date of birth}. About half of the U.S. population (132 million of 248 million or 53%) are likely to be uniquely identified by only {place, gender, date of birth}, where place is basically the city, town, or municipality in which the person resides.
f:id:Nov12:20180125054146p:plain

Source: Sweeney(2000)

 

講義では上の研究を例に挙げ、研究で用いたデータはたとえ匿名化されていても高いセキュリティの場所に保存するよう指導していました。

 

Reference:

Sweeney, L. (2000). Simple demographics often identify people uniquely. Health (San Francisco)671, 1-34.

 

フラッシュ・ボーイズ

 

 

MiFID II関連記事でよく引用されていたので、今更ながらマイケル・ルイス「フラッシュボーイズ」を読んでみたんですが、これ本当に面白いですね。

 米国内市場間でのタイムラグを利用した高頻度取引(HFT)業者の鞘取りが市場取引をゆがめているという問題意識を持ったブラッド・カツヤマ氏が独自の取引所IEXを立ち上げるまでのノン・フィクション。 

 目の前の市場に違和感を感じたブラッド・カツヤマ氏が、その原因を探求し、それぞれ違った専門性を持つ仲間を見つけ、金融市場改革のために自ら市場を立ち上げる、という流れはさながら金融市場版ワンピースという感じで、胸が熱くなりました。

 「生涯投資家」や少し前の「未来政府」を読んだ時にも感じたことですが、自分が見つけた目の前の問題について、情熱を持って自ら解決策を生み出すような人たちが少しずつ社会を動かすんだなと思いました。 

 HFTやPTS、ダークプールについては知識不足なので、IEXの評価はできないですが、少なくとも物語としてはとても面白かったです。

 

(参考)
・ブラッド・カツヤマ氏のインタビュー記事

forbesjapan.com

 ・岩井・関 (2014). 金融・証券規制 米国で注目が集まる高頻度取引 (HFT) の功罪を巡る議論. 野村資本市場クォータリー, 18(1), 25-33.

http://www.nicmr.com/nicmr/report/repo/2014/2014sum03.pdf

・Osipovich, A. (2017, October 26). Startup Exchange Cleared to Take on NYSE, Nasdaq for Stock Listings. Wall Street Journal

 

 

2017年に読んだ本(おすすめ6冊)

2017年は色々と日本語の経済・金融関係の本を読んでしまいました。折角なので特に面白かったものを紹介したいと思います。トップ5にしようと思ったものの選べず6つあります。やや古いのが混じっていますが、、。 

しかし、どうやって内容を覚えているかは課題ですね。「人手不足なのになぜ賃金は上がらないのか」は確実にランク入りしそうな内容だったはずなのに中身を大分忘れてしまったため選外です。

1. 宮内惇至「金融危機バーゼル規制の経済学」:日銀出身の著者が、金融危機後の金融規制を巡る動向と、各種規制に関する議論を紹介。やや専門的だが、各種規制について経緯・内容・評価をバランスよくわかりやすく解説しており、一読後は金融規制関連の記事の理解度が高まった。

2. 福田慎一「失われた20年を超えて」:バブル崩壊~現在までの日本経済の停滞について、生産性の低迷といった供給面・不況による需要不足やマクロ政策の失敗といった需要面の双方から包括的に検証。コンパクトながらバブル崩壊後の不良債権問題~不良債権処理~生産性の低迷を一貫して説明している。意外と類書が少ないので貴重。

3. 村上世彰「生涯投資家」:日本のコーポレート・ガバナンスを改善するため、通産省を飛び出した村上氏が、村上ファンドの立ち上げから終わりまでを振り返る。情熱に心を打たれた。MBAファイナンスの基礎を学んでいると常識のように思える内容が、20年前の日本ではまったく当たり前ではなかったことには正直驚いた。


 



4. ティモシー・F・ガイトナーガイトナー回顧録」:世界金融危機に際してNY Fed総裁・米財務長官として対応にあたったガイトナーの回顧録。危機対応の話としても、危機後の金融規制改革の背景を学ぶ上でも有意義だった。

 

5. 翁邦雄「金利と経済」:
近年の日銀の金融政策や金利を巡る議論を振り返り、自然利子率が低迷する中での金融政策について議論。金利を巡る議論の歴史的な背景や、近年の各国中銀や国際機関エコノミストの発言を出所付きで丁寧に整理しているため学ぶことが多かった。

6. 中林美恵子トランプ大統領とアメリカ議会」:
アメリカ議会の制度と慣習を共和党系の議会職員として実際に勤務経験がある著者が解説。米国の立法プロセスは日本と大分異なるので、この本で概要をつかめたことはとても役立った。


(その他:サーベイ論文)Caballero et al. (2017) The Safe Assets Shortage Conundrum:安全資産の発行主体が先進国に偏っており、その発行量の伸びが世界全体の成長に追いつかないことが経済のボトルネックになっている可能性を指摘。「流動性の罠」ならぬ「安全資産の罠」が存在する場合、安全資産の需給を改善しない限り景気停滞から抜け出すことができないとする。金融規制の副作用や量的緩和策の効果など、いろいろなインプリケーションがあって面白かった。元論文を色々読んでみたい。


(読みかけながら面白い)
・Paul Blustein "Laid Low" :IMFの欧州債務危機対応を巡るドキュメンタリー。
・齊藤誠「新しいマクロ経済学」:学部上級~院初級のマクロの教科書。
・Garrett Grolemund "Hands-on Programming with R":Rの入門書。無料でPDFが落ちてた。心の弱い人でも続けられるやさしさを感じる。

(とても読みたい)
川口大司「日本の労働市場 -- 経済学者の視点」

「現代日本の官僚制」

つい最近発売になった、曽我先生の「現代日本の官僚制」が興味深い内容だったので、備忘まで。

 

前半でいくつかの概念を定義したうえで、ミクロ経済学による理論分析と、国際比較や各省庁の人事データに基づく計量分析を行い、ファクトベースで議論を行っている点が魅力的です。

 

筆者は、日本の官僚制は、政治から権限を大きく委譲されている一方、国民からの信頼が低い(代表制が低い)と主張します。 

 

印象に残った点は以下のとおり。

・(事務次官・局長の人事異動サイクルを分析したところ)特に政治の関心の強い大蔵省や通産省は戦後早期に人事異動の慣例を確立し、人事への政治介入を防いできた。

・橋本行革以降の流れとして、内閣官房の機能強化が進み、統合が進められている一方、その人員は各省からの出向などによるものが多く、規模に対して権限が小さく、調整機能を果たすことが多い。

・各省庁が政治介入を防ぐために人事サイクルを確立する中で、ジェネラリスト志向が強まっている。

行政改革の議論の中では、公務員の専門性をどのように確保していくかという論点が欠落していた。

 

***

小選挙区制の下、政治システムが急速に官邸主導となっていく中で、対応する官僚機構が十分に適応できていない問題を感じました。官僚機構の改革における、各省庁をアクターとしたパワーゲームを実際のデータで示しているのは画期的なのではないでしょうか。

 

個人的な感覚としても、1、2年で異動を繰り返すジェネラリスト志向のキャリア官僚に、「シンクタンク機能」を求めることは難しいように感じますし、重要な政策決定における司令塔機能が不透明な首相周囲の関係者で担われている現状には問題があるように思います。

遠回りに見える課題ですが、そもそもの人事制度の在り方を含め、慣例にとらわれない改革が必要な分野だと改めて感じました。

 

曽我 謙悟 (著) 「現代日本の官僚制」

主要目次

1 本書のめざすところと議論の進め方
2 官僚制の政治学
3 理論で捉える:政治的産物としての官僚制
4 組織編成の国際比較
5 統制と技能の国際比較
6 変化の中の日本の官僚制
7 日本の官僚制:その組織編成
8 日本の官僚制:統制と技能
9 官僚制の政治的効果と政策的効果
10 いかなる展望が見出せるのか

ネイト・シルバー氏がトランプ勝利の可能性を高く見積もっていた理由

先日行われた米国大統領選の事前予測について、著名なデータサイエンティストであり今回も選挙予測を行っていたNate Silver氏が11月11日にブログ記事を書いています。大統領選というよりも、統計分析の話として面白かったので、簡単にポイントを付けて共有したいと思います。

fivethirtyeight.com

 

(なお、僕自身は統計や投票行動の専門家でもなく、彼が専門家として現在どの程度信頼されているかについても正確に理解しているわけではないので、彼の記事を引用することについて違和感があればご指摘いただけるとありがたいです。)

Nate Silver氏は、日本でも2013年頃にブームとなった「シグナル&ノイズ」の著者で、2012年の米国大統領選挙の結果を正確に予想したことでよく知られています。
今回の選挙では、他の予測サイトがトランプ氏勝利の確率について15%~1%以下としている中、Nate Silver氏が運営するサイト”Five Thirty Eight”は、約30%という比較的高い当選確率を示していました。今回のブログ記事では、「なぜ我々の予測は他の予測と比べてトランプ氏勝利の確率を高く推定していたのか」ということを分析するとともに、多くのメディアや人々がヒラリー勝利の予想に偏っていたことを批判しています。

***
<ポイント>
① モデルによる投票予測は、世論調査が完全に正確でないから意味がある。
世論調査においては全国の結果よりも、州ごとの結果の方が、誤差は大きくなる。
③ ある州における投票結果は、周囲の州の結果と強い相関がある。
④ 直前まで態度を決めていない、あるいは第三党支持者の動向は予測と結果の関係に大きな影響を及ぼす。
⑤ 今回の選挙における事前の世論調査に特別大きな誤差があったわけではない。
⑥ 今回の世論調査には、過去の選挙と同程度の、「ほどほど(modest)の」誤差があったが、その程度の誤差であっても大方の予想を反してトランプ氏が当選するには十分だった。
⑦ 今回のトランプ勝利を「予想外」のものとしたのは、世論調査の誤差よりも、ジャーナリストの思い込み。

<概略>
(要約ではなく、重要と思った箇所を適宜ピックアップして再構成しています。原文にはもっといろいろなことが書いてあります。)

まず、モデルによる投票結果分析の意義は、世論調査が完全に正確ではないために生じます。
世論調査が完全に正確であれば世論調査の結果をそのまま読めばよいので、モデルを用いて当選確率を示すことには意味がありません。誤差を考慮に入れた上で、可能範囲の予測を示すことに、数理モデルを用いた投票分析の意味があります。

Five Thirty Eightの選挙予測は、1972年以降の大統領選挙における世論調査結果の正確性のデータに基づいています。例えば、選挙最終週の世論調査と実際の投票結果には、平均2%の誤差が生じます。これは、単純なサンプリングエラーよりも大きいので、世論調査結果には規則的な誤差が生じていると考えられます。 

このような誤差は、全国レベルよりも州レベルでより大きくなります。例えば、トランプ支持者が多い白人中所得層と、クリントン支持者が多いヒスパニック系において、世論調査への回答率が低かったと仮定します。この時、彼らの意見は世論調査では現れないものの、選挙結果には反映されます。
全国では、それぞれの効果がある程度打ち消しあうため、世論調査と選挙結果のずれは比較的小さくなると見込まれます。しかし、州ごとで見ると、白人中所得層の多い州では、トランプ氏が世論調査よりも多い票を得る一方、ヒスパニック系の多い州ではクリントン氏が世論調査よりも多い票を得ることになります。米国大統領選は原則州ごとに選挙人を総取りする方式なので、こうした州ごとのずれの影響が大きくなります。
Five Thirty Eightは、過去のデータにおけるこのような州ごとの特色を考慮しています。

今回、この影響は大きく出ました。クリントン氏は11の州で事前の世論調査よりも多い得票率を得ました。特にカリフォルニアでは世論調査を5ポイント上回る支持を得ています。しかし、その内9つの州はもともと民主党優位な地域であったため、結果としてあまり有利になりませんでした。
他方、中西部・ペンシルバニアなどでは、世論調査を大きく下回る結果となりました。これらの州には激戦区が多く含まれていたため、クリントン氏はこれらの地域で予想以上に選挙人を失うこととなりました。

また、ある州での選挙結果は周りの州の選挙結果と相関があります。例えば、中西部及びペンシルバニアは似た動向を示す傾向にあり、これらの地域でクリントン氏が予想以上に苦戦したことは、今回の結果に大きな影響を与えました。
これはFive Thirty Eight が4年前にオバマ氏の勝利を予測し、今回クリントン氏の勝率を低く見積もった共通の原因の一つです。

さらに、直前まで態度を決めていなかった投票者の動向が大きな影響を与えました。態度を決めていない人の投票行動を予測することは難しく、このような人が多い場合には予測と結果のブレは大きくなりがちです。また、トランプ氏は最後の2週間で大きく支持を伸ばしましたが、事前の結果予測において、選挙直前の世論調査の動向をどの程度織り込むべきかについては議論があり、予測モデルによってもその反映の程度は異なります。

今回の選挙において、世論調査の結果に特別大きな誤差があったという考えには強く反論します。今回の選挙における世論調査でも過去の選挙と同程度のmodestな誤差があり、それらの誤差はトランプ氏の勝利を導くのに十分でした。

多くの人が今回の結果や英国のEU離脱を予想外に感じたのは、事前の思い込みから偏ったデータの見方をしていたことにあり、データを丁寧に分析していれば今回の結果はそれほど予想外のものではなかったはずです。

***
(以下個人の感想)
以下のNew York Timesのページでは、各種調査における事前予測の比較がなされています。(州ごとの非常に詳細なデータです)

http://www.nytimes.com/interactive/2016/upshot/presidential-polls-forecast.html?_r=0#other-forecasts

 

多くのメディアにとって予想外の結果になったにせよ、こうした形で様々な事前分析が行われ、終わった後には予測の振り返りが行われるというのはとても面白い文化だと思いますし、日本でももっと普及するといいなと思います。

2012年の選挙でほとんどの州の結果を的中させたNate Silver氏が今回の選挙ではヒラリー勝利に70%の確率を置いていたことをもって、統計分析の意義自体に疑問を投げかけるような言説をちょくちょく見かけたのですが、このような形で冷静に分析手法の特徴と限界を検討しつつ、適切な形で判断に利用していくことが重要なのだと感じました。

なお、今回引用した記事は選挙後の11月11日の投稿ですが、以下の10月24日の投稿ではより詳細にFive Thirty Eightのモデルとその他のモデルの違いを説明しています。