検索
連載

Rは統計解析のブッシュナイフだ実践! Rで学ぶ統計解析の基礎(1)(1/4 ページ)

今ほど統計解析が必要とされる時代はありません。オープンソースの統計処理言語・環境の「R」を使って実践的な統計解析のテクニックとリテラシーを習得しましょう! 読者にとってRは、世に溢れるデータの密林を切り開くための“ブッシュナイフ”となることでしょう(編集部)

PC用表示 関連情報
Share
Tweet
LINE
Hatena

統計解析の必要性とリテラシー

 21世紀になって、経営学者の故ピーター・ドラッカー氏が言うところの知識労働者は、ますます統計解析を必要する局面が増えてきました。この状況は、20世紀後半から21世紀に起きた計算機能力の増大とインターネットの発展を基礎に、3つの大きな潮流が現れたことがキッカケとなっているように思います。その3つの潮流とは、オープンソースオープンデータ、そしてオープンアイデアです。後ろの2つは今筆者が名付けました。

 オープンソースは、皆さんがご存知のように、Linux、Apache、Perl、Python、RubyなどのOSやアプリケーション、プログラミング言語などのソフトウェアのソースコードがオープンに公開され、グローバルな規模で開発が行われてきたムーブメントとその成果物のことです。統計の分野におけるオープンソースソフトウェアのデファクトスタンダードは「R」という統計言語+統合環境です。これについての詳細はおいおい解説しますが、ざっと次のような特徴を持っています。

●Rの特徴

  • 統計解析言語Sをベースに構築されたオープンソースのプログラミング言語である(Rという名前はアルファベットのSの前にRがあるところから取られている)
  • インタプリタ言語で簡単な文法のために習得が容易である
  • 言語はオブジェクト指向言語的側面と関数型言語的側面がある
  • 強力な統計解析・データ解析機能を最初から持っている
  • オンメモリにデータを展開する
  • 統計解析をしやすいデータ型で、データを探索的に分析できる
  • 多様で美しいグラフを手軽に作成できる
  • CRANアーカイブサイトにある数千を超える豊かな統計ライブラリが存在する
  • ユーザーコミュニティには数百万人を超えるユーザーが存在する
  • ユーザー数が多いため、質問の回答が得やすく、バグがすぐに収束し、毎週世界のどこかでユーザー会が開催されている
  • 商用統計解析アプリケーションに比べても遜色ないパフォーマンス
  • 入門的マニュアルから専門の統計解析に至るまで、豊富なドキュメトや書籍が存在する
  • 商用パッケージやデータベース、C/C++、Fortran、Perl、Python、Java言語とのスムーズなインターフェースがある

 一方で、いまだRが不得意なことも存在します。

  • テラバイトを超える大規模データ処理(メモリにデータが展開できないため)
  • 複雑なデータ構造の表現(RDBのようなテーブル間の演算機能が低い)
  • 複雑なクエリを効率的に処理する(SQLやストアドプロシージャのような効率的なクエリ言語が存在しない)
  • ゲームアプリケーションやWebアプリケーションなどの作成(いや、無理すればできますが……)
  • 並列化計算、ベクトル化計算(ただし、マルチプロセッサやGPU、そしてOpenMPやHadoopを利用した並列化計算の実装が現在進行中)

 Rは汎用のプログラミング言語とはかなり異なり、統計解析やデータ解析に特化している言語です。データを統計解析で使いやすい形でメモリ上に展開し、強力な統計解析関数で対話的、探索的に分析を行い、手軽に高品質なグラフィックスを作成します。

RプロジェクトのWebサイト
RプロジェクトのWebサイト
Rのサンプル画面(上記サイトより引用)
Rのサンプル画面(上記サイトより引用)

データが豊富に入手できる時代

 以上が簡単なRの紹介です。話を統計の重要性が高まっている理由に戻します。1つ目の理由はオープンソースでした。2つ目の理由は、オープンデータということです。

 オープンデータは、公的機関や政府機関が、自身の説明責任を果たすために、統計データを積極的にネットに公開してきたことです。例えば、世界銀行のWebサイトでは、RESTインタフェースにより世界各国のGDPデータを手に入れることが可能です。

 また、日本国政府も「政府統計の総合窓口」を公開して、白書にあるような統計データを公開しています。

 このようにオープンデータにより誰もが安価で容易に多種多様なデータにアクセスできるようになっています。

 公的なオープンデータという存在に加えて、最近では企業も多くのデータを所有するようになっています。例えば、オンラインでサービスを提供しているのであれば、ユーザーの購買履歴や、Webページのクリック数、そしてそれらユーザーのプロファイルといったように膨大なデータがあるでしょう。こうしたデータを解析をすることにビジネス上、大きな価値がある時代となっています。

Rで楽しく統計リテラシーを身に付ける

 もちろん統計解析向けの商用パッケージというものがあります。本格的なデータマイニングであれば、データウェアハウスを使うという手もあります。しかし、知的労働の現場において、サッと取り出して目前のデータを料理し、何らかの知見を引き出すということの意味は、かつてないほどに高まっているように思います。データ解析を下請けに出して黒魔術化せずに、自分の頭で考え、統計リテラシー・データリテラシーを血肉化していく。オリジナルなビジネスアイデアというのは、自らの手を動かし、自分の頭で考えることを厭わない、こういう姿勢から出ていると思います。Rという言語+環境は、こうしたニーズにまさにうってつけの“ブッシュナイフ”となり得るのです。

 オープンアイデアは、文字通りアイデアの流通が以前に増してオープンになっている現象を指しています。これは学術分野における論文やアイデアのやりとりが、ネット上で盛んに行われるようになってきたことに起因してます。多くの研究者がプレプリントサーバー(例えばhttp://arxiv.org/)を利用してアイデアを交換するようになっています。また、オープンアクセスポリシーを持つ学術誌が増加してきたり、自分のWebサイトでワーキングペーパーや論文を公開することでGoogle Scholar検索によりアクセス可能になったことも理由として挙げられます。誰もが安価で容易に研究論文にアクセスできるようになったということです。

 このオープンソースオープンデータオープンアイデアがあるときに、それを利用して楽しまない手はないでしょう。それを利用して統計解析を自分たちのリテラシーとして獲得するためのキッカケにしない手はないでしょう。と、これが、この連載を始める動機になっています。

グーグルでも使われているR

 実際に2010年から始まる次の10年は、“Data Matters”(データは重要だ)のかけ声の下、多くの研究者や企業が膨大な統計解析・データ解析を行い、そこから効率よくアイデアやお金の源泉を「発掘」しようと競争が激化していくことでしょう。それがすでに始まっていることは冒頭で述べました。数年前にUCバークレーの看板教授だった著名なミクロ経済学者、Hal Varian氏をグーグルが雇い入れ、統計解析チームが本格的に活動しています。また、同様にIBMやマイクロソフト、Amazonなどの大手IT企業には専門の大所帯の統計解析チームが盛んに活動をしています。こうした活動については、以下の文書も参考になります。

 ちなみにHal Varian氏のチームはRをデータ解析・データマイニングのためのプロトタイピング言語と利用し、そこで確立された手法がエンジニアによりC/C++やJava、Pythonにより実装されるそうです。

 以上のような状況を考えると、統計解析を「読み書き算盤(そろばん)」と同様のリテラシーに数え上げる日も遠くはない予感がしています。それなのに、オープンソース、オープンデータ、オープンアイデアを利用した統計解析への日本語の手ほどきとなる解説コンテンツが少なすぎるような気がしています。この連載ではその現状に挑戦してみたいと思っています。

Copyright © ITmedia, Inc. All Rights Reserved.

       | 次のページへ
ページトップに戻る