プログラミング教育が始まっていますが、情報のカリキュラムでRを使う場合、R STUDIO IDEを使う事になると思います。
R言語自体はそのまま無料でインストールできるので、今回は、実際にインストールから使うまでの工程について書こうかなと思います。
Rは、
で書いたように、CSVが読めるので、
のような感じで、Pythonのコードを書いて、bの変数部分にデータを読み込んで変換すると
のようにCSVファイルを作れます。実際にオフィースで開こうとすると、インポート扱いになるので、
のような形で読み込むことになりますが、CSVファイルはオフィースソフトでも作れるので、
のような感じの物を作ってこれをエクスポートして使う事が出来ます。先日は、この中の 【 データの選択 】 について書きましたが、今回は、Rのインストールから書こうと思います。
R 言語のインストール
R言語のインストールですが、
■ R言語のサイト
https://cran.r-project.org/index.html
の公式サイトからダウンロードできるようになっています。
WIDNOWSの場合だと、
のようなファイルがあるので、そこからダウンロードする事になります。
ファイルを実行すると、
のように言語の選択があるので、母国語を選択してOKをクリックして、
のように、メッセージが出るので、 【 次へ(N)> 】 で次に進みます。すると、
のような画面になるので、テキストを読んでから 【 次へ(N)> 】 をクリックします。すると、インストール先の指定が出るので、
でインストール先を指定できます。つまり、R言語はプログラムファイルとは別の任意のフォルダーにインストールして実行できるので、世界だ理以降のドライブを指定して実行することもできます。
ここで指定先を選択して 【 次へ(N)> 】 をクリックすると、インストールのオプションが出てきます。
ここでは、アーキテクチャに合わせたインストールが出来るようになっていますが、x86-32の場合、x86-64をインストールしても意味がありませんから、32bitファイルのみで大丈夫ですし、64bitだけしか使わない場合だと、32bitのオプションは必要がありません。
とりあえず、そうした事を気にしない場合だと、両方のチェックが入った通常のインストールをすることになります。
64bit版のWINDOWS環境での32bitの動作は、WOW 64と言うエミュレーション機能で動作しているので、ソフトとOSの間にエミュレーターが入った状態で動作しています。その為、64bitのアプリケーションガネイティブで動いている状態とは異なるので遅くなるのですが、後方互換としてそうした機能が実装されています。
こうした後方互換はWIDNOWS 95の時代のDOS窓なども後方互換になりますが、そう言った機能が用意されています。また、実行オプションもあるので、WINDOWS7では、
■ 実行方法の選択
■ XPモード(Pro版以降のVirtual PCによるVMでの処理)
で動作を担保するような流れになっていました。10もPro版以降だと、Hyper-Vのクライアントが使えるので、別のOSをインストールして使用できるのですが、WINDOWS 11だとアマゾンのアプリが使えるようになったり、AndroidのアプリがWIDNWOS 11の機能とは別に使用できるようになる予定があるので、Androidのアプリケーションの実行環境としてWINDOWSなどのPC用のOSも選択肢に入るようになります。
x86-32については、64bitアーキテクチャだとAMD 64と同様の拡張なので、大昔のIA64のようなネイティブ64bitとは異なり、32bitも使える64bitと言う仕様になっていますから、IntelとAMDの双方で名称は違う物の、そう言った互換性が担保された状態で64bitの処理が出来るようになっています。この仕様はAMD64とEM64-T辺りからですから、
■ Athlon 64
■ Core MA
の時代からですから、相当昔からそう言った仕様でしたが、AMDが先じて64bitのアーキテクチャに着手していたので、Intelが32bitのアーキテクチャを使っている時には64bitの製品をリリースしていました。しかし、同時期にIntelは、革新的なアーキテクチャのPrescottコアでSMTを実装していました。つまり、64bitでシングルスレッドでも32bitよりも高速にする考え方と、シングルスレッドの時代は終わりなので、スレッド数を多く使えるプロセッサのアプロ―チと言う全く異なる考え方でメーカーが革新的な技術を投入していたのですが、2コア以上の時代になるとアーキテクチャと一緒に電源からマザーや拡張スロットの仕様まで刷新され、全く違った物が出来上がりますが、IntelがLGA 775のCPUをリリースし始めるころには、AMDもIntelも2コアの製品をリリースし、この時代には両メーカー共に32bitもサポートした64bitのアーキテクチャをリリースしていました。新しいアーキテクチャででホモジニアスな2コアなので、この時代からSocket 478のPrescottコアとは別次元後の熱量になっていたわけですが、この辺りから
■ 2コア
■ 64bit対応
と言うCPUが登場し始めます。つまり、これ以前と言う事になりますから、Pentium 4やAthlon当たりの時代(15年以上前)の製品がネイティブな32bitで、それ以降だと、ネットブックのようなAtom製品などがそうした仕様になっています。
その為、Core InsideシリーズやRyzenは当然のように64bitですし、それ以前のAMD FX辺りでも64bitで動作するので、OSが64bit版だとインストール時には64bitを選択する事になります。選択すると、
のようになりますが、起動オプションのカスタマイズなどもできますが、ここはどちらでもいいです。特に変更しない場合だと、いいえで問題ありません。この状態で、 【 次へ(N)> 】 をクリックすると、
のようにスタートメニューへの登録の有無が確認されますが、登録しない選択肢もあります。ここで登録の有無を指定して 【 次へ(N)> 】 をクリックすると
のように
■ デスクトップアイコン
■ クイック起動アイコン
の制作の有無の確認が出てきます。不要な場合はそのままにしておき、必要な場合はチェックを入れて 【 次へ(N)> 】 をクリックします。すると、
のようにインストールが始まり、終了すると、
のような画面になるので、 【 完了(F) 】 をクリックするとインストールが終了します。
R 言語を使う
R言語を開くと
のようなGUIの構成になっているので、コマンドプロンプトからコマンドを打って操作するような仕様ではなくなってます。
なので、名称も 【 RGui 】 となっています。
R言語では、データを読み込んで解析するので、解析するデータの格納場所を指定する必要があります。この場合、
のように
【 ファイル 】 ➡ 【 ディレクトリの変更 】
を選択すると、
のようにディレクトリを選択できるようになるので、作成した空のフォルダーを指定して使う事になります。
コ ードを書く
RGuiでは、
の世にコンソールが出ていますが、この状態だと作業しづらいのでコードを書く必要があります。
のように
【 ファイル 】 ➡ 【 新しいスクリプト 】
のようにするとエディタが出て来るので、
のように配置します。その状態で、エディタ側をクリックしてコードを書くことになります。例えば、
のようにコードを書いてコードを実行する場合、行を選択して
【 CTRL 】 ➡ 【 R 】
でその行を実行できます。この状態で実行すると、
のように計算が行われます。変数も使用できるので、
のような記述ができますから、これで実行すると、
のように結果が出力されます。そして、複数のデータの格納をする場合には、
c(データ, データ, データ, データ, ...)
という形で格納できるので、
のような形でコードを書いて、コード全体を選択して実行すると、
のようにaに格納されたデータを表示する事ができます。では、
のようなコードを書くとどうなるのか?と言うと、この処理をすると、R言語では、 【 個別のデータに対してその処理を適応する 】 ので、
のように格納されたデータに対してそれぞれ二乗する処理を実行してます。
グ ラフの生成
R言語の便利な点は大量のデータからグラフを作る場合の処理が嘘のように簡単な事で、一つの数値の集合からグラフを作る場合1行のコードでグラフを作れてしまいます。データが増えると記述も項目別に処理をすることになるので違ってきますが、
のようにplot()関数を使うと、
のように格納されたデータが配置されています。indexは数値の順番ですから、この表記で考えると、数値を並べるほどこの密度が増える事になります。グラフの記述だと
のように、plot()とhist()がありますが、hist()を実行すると、
のようなヒストグラムの表示が行われます。
表 示の切り替え
表示の切り替えですが、
のような並びの物をメニューから
のように配置しなおす事が出来ます。
書 面としての利用
こうしたデータがあると、書面として使用する場合がありますが、その場合、PDFで書き出す事が出来るようになっています。メニューから
を選択すると、
のようになりますから、プリンター名の部分をPDFにするとPDFでの出力が出来るようになります。
この時の書き出しの対象は 【 選択されたウインドウ 】 なので、個別にそれを選択して、PDF形式で指定先に保存すると、
のように個別のPDFとして書き出す事が出来ます。その為、
のようなテスト結果を
■ コードの部分
■ コンソールでの実行結果
■ グラフの表示
と言う形で個別のPDFファイルとして書き出す事が出来ます。
別途インストールが必要ですが、R Studio IDEを使った場合、この三つの書面を1つの書面としてエクスポートしてくれる機能があり、導入したデータもどう言った形なのかを見る事も可能になっておりファイルブラウザ―までついているので、RGuiよりも使いやすい仕様になっています。
Pythonを使うと 【 PyPDF2 】 と言うライブラリがあるので、フォルダ内に統合したいファイルを配置しておいて、PyPDF2で統合すれば、一つのPDFファイルを作る事ができます。と言っても、この処理をする場合には、ツリー構成の階層構造を使うのとファイルを使うので、標準ライブラリのpathlibも使う事になります。
フ ァイルでの保存
基本的に、RGuiでも
■ コード
■ プロジェクト
の双方を保存する事にありますから、この二者をわかりやすい場所に保存する事になります。
R 言語とPython
今回紹介したようにR言語はデータ解析に使える仕様になっていますが、Pythonでもmatlptlibを使うとデータを元にグラフの生成をする事が出来ます。この二者ですが、R言語は、解析や機械学習のみに特化した言語なので、汎用性のない特化型の言語になっていますが、PythonはMicroPythonを使ったマイコン制御までできますから、汎用性の高い言語になっています。その中のmatplotlibが解析に使用出来て、外部モジュールの追加で様々な事が出来るようになっていますが、基本的にR言語にはイベントハンドラで動くような物が作れる訳ではないので、
■ 解析
■ グラフ生成
■ 強化学習
に特化した言語になります。