[ DATT-A9DARX上場バール > データで遊ぶ > Rのハローワールド ]

PCゲーム「A列車で行こう9」で遊びながら学ぶ、Rのハローワールド。(最終更新:2024年4月20日)


データで遊ぶ

ステップバイステップ

  1. ダウンロード
  2. インストール
  3. ライブラリ
  4. コーディング
  5. エクステンション
  6. プロプライエタリ


Rのハローワールド ~めくるめくRワールドの世界へようそこ~

このページでは、いわば「Rのハローワールド」として、「R」によるプロット(データの可視化)を楽しそうにしてみせるという演示に偏っていることをご承知おきください。「R」で実行できる処理を体系的に学べるコースではありません。あなたが統計学の単位を取れるようにサポートするわけでもありません。だからといって、色やフォントにこだわって美しいプロットを追するものでもないのは当然です。プロットの見栄え(の悪さ)を理由に標準的なライブラリを敬遠してマイナーなライブラリを使おうとする者がいたら全力で叱らなくてはなりません。

ところで、フリーの統計解析環境「R」について情報検索するにはどうすればよいでしょうか。単に「R」と入力しても何も見つけられない(ひどい場合には「R」自体も見つけられない)という意味で、長らく「うまく検索できない例」の代名詞(というかジョーク)のように見なされてきました。そろそろまじめに、まじめな高校生のかたが何も知らない状態から「R」を知って(「R」というものがあるということを知って)、「R」について詳しく調べていき(どのように使われているのかわかり)、じぶんで「R」を使えるようになる(例題をなぞるだけでなくじぶんの課題に「R」を使える)というところを助けたいと思えてきたのです。

※高等学校の新科目「理数探究」は、これまでの学習指導要領では理数科の高校とスーパーサイエンスハイスクール(SSH)指定校で行なわれてきた「課題研究」などの探究活動を行う学習活動を、普通科の文系にも広げようというものです。じゅうぶんな台数のコンピューターを備えた「コンピューター室」さえあれば、新たな費用なしで統計解析環境「R」を導入できるのです。「理数探究」といいますと、とかく「テーマの決め方がわからない」とか「教科書がない」あまつさえ「それでもやらなきゃいけない」といったネガティブで否定的な嘆きの声が先立つところではございますが、「Rを使って多変量解析をして考察し、ポスターとペーパーの2種類の発表のしかたを体験する」ことを学習活動のコアにすべきです。データの採り方(集め方)と、そのデータに対して最も適切で妥当で標準の解析の方法を見定めるのが(広義の)「実験計画」であり(狭義の)「研究計画」であります。それがダンゴムシであるか、あるいは別のものであるかという違いはどうでもよいのです。言い換えれば、「テーマ選び」とは『データ選び』にほかならず、「教科書」としては「多変量解析の教科書ハンドブック」「データマイニングに関する副教材の類」がそのまま使えるのです。テーマのよしあしや発表の調子のよさを評価の対象にしてはいけません。やった・やってない・できた・てきてないがはっきりする(ごまかしようのない)「Rを使って多変量解析する」という具体的なことだけを評価の対象とすべきなのです。フリーの統計解析環境「R」は、生徒が自宅のPCにじぶんで導入することができ、この点でいかなる商用の数値計算・統計解析ソフトウェアにも自動的に勝るといえます。

※「多変量解析実例ハンドブック」は、論文の抜き刷りの合冊紀要のようになっており、わたしたちがこれから取り組む「理数探究」で最終的にまとめる報告書のお手本であると同時に、じぶんの探究活動(研究)への着手前に本書を見ることは「実験計画」「研究計画」のお手本になるものです。だいたいどのような分野やテーマではだいたいどのような解析手法を使うものなのか、あるいは、どのようなデータがあれば、あの解析手法を使えるのか、といった“土地鑑”を養ってください。普通科の高校の図書室に1冊あればよいです。要らなくなった「多変量解析実例ハンドブック」があったら普通科の高校に寄付しましょう。
※副題に「データマイニング入門」とある図書は、まったくふつうに国語や英語の副教材と同じ指導方法で扱えばよい。考査も同じ。以下の文を読んで問いに答えよまったくふつうにどの科目の考査とも同じように「理数探究」の考査が可能なのです。やさしく考えましょう。しかし、何の指導もなしで(各自でめいめいじぶんなりに=読めたかどうかは自己評価でという自分勝手な読み方で)「読んでおけ」という指示をしてはいけません。そんなにやさしい図書ではありません。
※統計数理研究所の研究内容をインタビュー形式で紹介する「データを未来に活かす」は、高校生がひとりで読んで、読書感想文を書いたり、著者になったつもりでプレゼンするのにちょうどよい図書です。ただし、1年生には読ませないでください(2年生の4~6月に読ませてください)

やみくもに「R」を使いさえすればよいというものではありません。独習したせいで変な癖がついてしまうと直すのが大変です。「Rの使い方」を検索しさえすれば使えるものではなく(それでも使えてしまうかもしれませんが、ただちに使ってよいということにはなりません:所定の学校で所定の単位を取らない限り業務に使ってはならない=実社会の実データで実問題の解決に使おうとしてはなりません)、学校での数学や理科の学習が大きな土台になるのは当然です。じぶんは「R」だけ使えればいいといって学習を放棄するような「逆効果」が起きることは絶対に避けなければなりません。「R」を「Rらしく」使う(手計算やじぶんでプログラムを書くのが困難で「R」を使うと断然ラクという場合に「R」を使う)ことを第一の方針と定め、「R」に標準的に用意されているライブラリを素直に使うことを最優先させます。また、「R」だけで完結するプログラミングをしようという内容ではありません。「R」を対話的に使わせ、Excelなどの優れたGUIのスプレッドシートを併用して、コピー&ペーストをさせながら進めていきます。これには、データを扱う責任がじぶんにあるということを明確にさせるねらいがあります。「R」を使いさえすれば何か出力されてくる、それを貼り付ければレポートが一丁上がり、という態度を許さないということです。

【考え方】追加の予算措置がない普通科の高校や生徒が自宅で使うということから「R」を選定するとしても、そこで扱う種々の数理的手法そのものは、ほかのソフトウェアでも同様に扱えるものです。ソフトウェアの違いをことさらに大きくとらえる必要はありません。もっといえば、ソフトウェアが違えば結果が違うというのではサイエンスとは呼べません。手元のPCでは「R」を動かしながら、例えば「JMPのマニュアル」を参照しても、よいのです。

一方で、「R」は道具に過ぎません。道具の自慢をしてはいけません。その道具で何をしたのか(できたのか=「できた」と主張するだけでなく客観的に見て「できている」のか)が問われる(レポートや論文では、じぶんでじぶんを客観的に問う)のです。「R」には様々なGUIのフロントエンドがありますが、浮き沈み(流行り廃り)が激しく寿命が短いものです。いずれにしても「R」こそがコアなのです。勉強のためには「生のR」(むき出しのR)を使うのがベストと考えます。実際の業務では、カラフルでグラフィカルでビューティフルな各種BIツールを使うでしょう(⇒データ戦争)。このとき、職場に用意されて代々申し送られてきた(質問があっても誰も答えられない「不文律の」)マニュアルの通りに操作するだけの人になるのか、そのBIツールがどんなデータで何をしているのかを、あたかもじぶんで「R」を使って処理しているかのようなイメージで生々しく認識できる人になるのかということなのです。実際にじぶんでなんでも実装する(生のプログラムを書く、生のデータ収集に取り組む)ということや、本当に「R」(そのもの)を業務で使うということは、きっとないでしょう

「A列車で行こう9」には
データがいっぱい

生のデータ収集に取り組むことはたいへんで、これだけで専門的な業務です。理数探究のための時間の大部分が単純な労働に費やされてしまっては元も子もありません。このサイト「DATT-A9D(arx.neorail.jp)」では、PCゲーム「A列車で行こう9」に題材を求め、さまざまなデータどん欲に使っていこうと思います。もっとほかのものでも、同じことができるでしょう。ここでPCゲーム「A列車で行こう9」を使ったのはたまたまです。

具体的・内部的なものから抽象的・外部的なものまで、さまざまなデータがあります。「さまざまなデータがある」とは、ゲームの中で列車や建物や植物や人口などの値の種類があるということではなく、このように「具体的・内部的なものから抽象的・外部的なものまで」があることを指しています。もちろん、抽象的・内部的なものもあれば、具体的・外部的なものもあるでしょう。文章や箇条書きでは、そのことが可視化できません。可視化の方法を考えてみましょう。さらに、「具体的⇔抽象的」「内部的⇔外部的」の2つの軸と直交する3つ目の軸も探してみましょう。

まずは遊べ!ゲームとして)

ニューゲームで試す」の各ページで挙げたようなことを頭の片隅に置きながら、しかし思う存分、まずは遊びましょう!

ゲームとして遊ぶときには面倒に思えるでしょうが、このあと取り組む理数探究がラクになると思って、遊びながらもちょっとだけ面倒なことをしてください。ちょっとでいいですから!

  1. じぶんは何を考えてどう判断したのかをノートに記録しましょう
  2. ゲームの勝ち負けを決めさえすればよいという程度を超えて、より詳細な採点方法を考えてみよう

条件が違うと、判断やスコアはどのように変わるでしょうか。うまくいったことだけでなく、うまくいかなかったことや、うまくいっていたけれどこれをすればうまくいかなくなるというようなことを網羅的に書き出してみよう

※「実験計画法という名のおまじないを暗記という状態」あるいは「数学のパズルみたいなものという理解」に陥らず切実さ(実感)を持たせようというねらい

「データを対象とした実験」

*プロフェッショナルなツールで実現されていて新規性はないが、統計解析環境「R」や自作のプログラムで追体験しよう

ゲームのプログラムから離れて
実験環境を用意しよう

※「NMPC-L64」の実行例の紹介は「作図しよう」に移しました。

「R」を対話的に使おう
「R」と同じ計算をするプログラムを書いてみよう

地形の特徴・地形の複雑度


「R」を使って描こう



クラスタリング
kmeansを使って~



ボロノイ図
ggvoronoiを使って~



行列の特異値分解(SVD)
prcompを使って~


等高線
contourを使って~


R統計数理研究所のミラーサイトから「R」を入手しよう
統計数理研究所とは

ARX上場バール(43590) All Rights Reserved. ©2018-2024, tht.