Kandai R 入門者講習

92
入入入入入入 【】 @kosugitti .
  • Upload

    -
  • Category

    Education

  • view

    1.242
  • download

    1

Transcript of Kandai R 入門者講習

Page 1: Kandai R 入門者講習

【入門者講習】@kosugitti

.

Page 2: Kandai R 入門者講習

自己紹介• なまえ;小杉考司( Twitter @kosugitti)• しょぞく;山口大学教育学部小学校コース• せんもん;社会心理学,または心理学的統計法• けいれき;社 94-553 / 関西学院大学→山口大学

トリスなう

Page 3: Kandai R 入門者講習
Page 4: Kandai R 入門者講習

  ってなんですか• 最近あちこちで聞くことが多くなってきたけど,• 統計ソフトなの?統計環境なの?• 何ができるの?なんか難しくないの?

Page 5: Kandai R 入門者講習

  ってなんですか• 統計ソフトなの?統計環境なの?

• 統計処理は「なんでも!」できます。• プログラマにとっては集計,分析,報告書作成まで全部できるので統計環境=プログラム言語です• 大学の研究者にとっては統計ソフト☆という理解で結構です。

Page 6: Kandai R 入門者講習

  ってなんですか• 統計ソフトなら間に合ってるよ!という人に

• SASや SPSSが  を取り込み始めました。• 統計ソフトとしては商用ソフトよりも数年先を行きます。

Page 7: Kandai R 入門者講習

  の特徴• オープンなフリーソフトウェアでどんどん成長• 情報がネットなどでじゃんじゃん公開されている• サンプルコード,サンプルデータが豊富• 8000を超えるパッケージでぐんぐん拡張!

Page 8: Kandai R 入門者講習

パッケージがすごい• 基本システムに加えて,専門的な分析をするパッケージがネットを通じて公開されている• ボタンひとつでネットから新しいパッケージ=新しい分析技術を入手出来る• 専門家もこぞって開発&公開する• 最新の分析技術があなたのすぐ手の中に!!

Page 9: Kandai R 入門者講習

this is

Page 10: Kandai R 入門者講習

  の特徴• CUI…Command User Interfaceあるいは Character User

Interfaceとはコンピュータにおいて、キーボードを用いて入力を行い文字によって出力を行う様式のユーザインタフェースである。

Page 11: Kandai R 入門者講習

CUIの短所• 短所;

• スペルミスすると動かない。• 特に Rは大文字と小文字も区別する• 日本語文字は得意じゃない=半角英数だけで書く• なんかプログラマみたいにみえるやん

Page 12: Kandai R 入門者講習

CUIの長所• 長所;

• コードがあればどこででも動く• 自分が何をやっているかがはっきりわかる

• 「何をやってどうなったかわからない」という質問に具体的かつ的確に答えられる• なんかプログラマみたいにみえるやん

Page 13: Kandai R 入門者講習

それでもやっぱりやだよぉぉぉ ?

Page 14: Kandai R 入門者講習

そんなあなたに

Page 15: Kandai R 入門者講習

こんなのもあるよ

Page 16: Kandai R 入門者講習

Rコマンダーといいます• これも Rのパッケージのひとつ• Rコマンダーの追加パッケージもたくさん!• とりつきにくいと思う人はこれから始めても OK

Page 17: Kandai R 入門者講習

Rコマンダーの中身は1.ここにコードを書く

3.ここに結果が出る

2.押す

Page 18: Kandai R 入門者講習

プレーンな  だと同じ画面に両方出る

Page 19: Kandai R 入門者講習

Rコマンダーも悪くない• Rコマンダーは代筆パッケージのようなものです• ある程度プログラム勘がある人はここから始めてもいいかも。でもすぐに「美しくない」と自分で書き始めると思います(体験談)。そんな人は・・・• CUIに抵抗がある人もここからでいいですが, CUIの長所を生かすことを考えるなら・・・

Page 20: Kandai R 入門者講習
Page 21: Kandai R 入門者講習

圧倒的にオススメします

の組み合わせ

Page 22: Kandai R 入門者講習

どうちがうの?は統合開発環境 (IDE)と呼ばれるもの。

の中で を動かして,使いやすくしてくれるもの。

Page 23: Kandai R 入門者講習

    があると• コード補完機能などコードが書きやすくなる!• 増えがちなファイルの管理も簡単に!• パッケージのインストールもクリック一つで OK!• レポート作成など文書作成機能も充実!

Page 24: Kandai R 入門者講習

一旦ここでまとめ•   はとても良いものです。

• どんどん成長するみんなのフリーソフトウェア• 専門家もユーザーも。これからの統計プラットフォーム• 入門書やユーザーの活動もあちこちで! join us!

Page 25: Kandai R 入門者講習

それでは実際に使ってみましょうPCをご準備くださいね

Page 26: Kandai R 入門者講習

 を始めるのに必要な環境

• パソコン(WindowsでもMacでも Linuxでも )

• インターネット環境(ネットで色々とってきます)

Page 27: Kandai R 入門者講習

 を導入しよう• 「 R」だけでは検索できないので,「 CRAN」といれましょう。

Page 28: Kandai R 入門者講習
Page 29: Kandai R 入門者講習
Page 30: Kandai R 入門者講習

2016.06.08現在

Page 31: Kandai R 入門者講習
Page 32: Kandai R 入門者講習
Page 33: Kandai R 入門者講習
Page 34: Kandai R 入門者講習
Page 35: Kandai R 入門者講習
Page 36: Kandai R 入門者講習
Page 37: Kandai R 入門者講習
Page 38: Kandai R 入門者講習

「管理人として実行」したほうが良いかと

Page 39: Kandai R 入門者講習

Console調理場

Scriptここでレシピを展開 Workspace/History

シンク/カメラ

Files/Plots/Packages/HelpFiles 冷蔵庫/ Plot ブログ用画像Package 調味料/ Help レシピ本

基本 4領域

Page 40: Kandai R 入門者講習

使い始める前に

Page 41: Kandai R 入門者講習

タイトルバーにフォルダ情報があればプロジェクト準備 OK

Page 42: Kandai R 入門者講習

プロジェクト管理の利点• ファイルがあちこちに拡散しない• プロジェクトごとにワークスペース( Rの記憶)が保持できる• Working Directoryが自動的に設定される(パスが短くて済む)• R単体だと setwd関数で指定する

Page 43: Kandai R 入門者講習

完全に一致

Page 44: Kandai R 入門者講習

他にも便利な機能がいっぱい• 関数補完機能( TABキー)• Sourceから Consoleへ (Run), Historyから

Consoleや Sourceへ• 実行してうまく行ったものを Sourceに保存=清書• プロットした図の出力(サイズ変更や Clipboard出力, File出力)

Page 45: Kandai R 入門者講習

順番にやっていきましょう

Page 46: Kandai R 入門者講習
Page 47: Kandai R 入門者講習

Console調理場

Scriptここでレシピを展開レシピを書いて調理場に持っていく

アクティブなカーソルがどこにあるか注意してね

Page 48: Kandai R 入門者講習

レシピを書いて

調理場に持っていくと

できた☆

Page 49: Kandai R 入門者講習
Page 50: Kandai R 入門者講習

Historyタブも便利毎回の実行記録が残ります

コンソール(調理場)やソース(レシピ帳)に持っていくことも可能。

Page 51: Kandai R 入門者講習

四則演算

一行ごと実行される

実行待ち状態

Page 52: Kandai R 入門者講習

四則演算ここのプラスは「まだ終わってませんよね?」の意

Page 53: Kandai R 入門者講習

保存しておこう

Page 54: Kandai R 入門者講習

関数こそ醍醐味

Page 55: Kandai R 入門者講習

関数がいーっぱい• 関数は,関数名(引数,引数,引数, ...)のように書きます。• 引数(ひきすう)は関数に渡したい数字やデータです。• 引数でオプションの指定をすることもあります。• 例)mean(x, na.rm=TRUE)

• TRUE/FALSEはスイッチの on/offを表す記号です

Page 56: Kandai R 入門者講習

Helpも関数

Page 57: Kandai R 入門者講習

英語きらい?• ヘルプは英語ですが,書式は整っているので慣れれば読めます• Description;解説• Usage;使い方とデフォルト情報。• Auguments;引数。与える情報。• Details;関数の詳細。• Value;関数が返す値。アウトプット。• Referenceや Exampleもあります。

Page 58: Kandai R 入門者講習

ただの電卓じゃないよ• 数字をセットで扱えます。• 数字のセットに名前を付けてとっておくことができます。次のように入力してみてください。• 1:4 -> kandai

• 「いちころんよん ハイフン だいなり かんだい」• 「かんだい」

Page 59: Kandai R 入門者講習

一言一句解説• 一行目;

• 「いちころんよん」; 1から 4まで連続した数字• 「ハイフン だいなり」;→のつもり。代入しなさい。• 「かんだい」;かんだいと名付けた箱の中に。

• 二行目• 「かんだい」;かんだいの中身はなんなんだい?

Page 60: Kandai R 入門者講習

数字のセットなので平均の関数mean標準偏差の関数 sd

相関の関数 cor

Page 61: Kandai R 入門者講習

関数電卓かよ!• という人のために。作図もできるのです。

Page 62: Kandai R 入門者講習
Page 63: Kandai R 入門者講習

でもまだ○ xcelに負けてるね!• という人のために,今から色々紹介していきますが,• ひとまず demo(graphics)と入力してみないか?!• 数値の行列処理,作図能力,なかなかですよ

Page 64: Kandai R 入門者講習

行列• 表計算ソフトはベクトルの計算はできても行列計算は苦手なわけでして・・・• 次のように入力してみましょう

Page 65: Kandai R 入門者講習

要素にアクセス• 出力の周辺に, [,1]とか [2,]とかありましたね。• アレがそのまま,行列アクセスのヒントになっています。

Page 66: Kandai R 入門者講習

行列の計算?• mat1 -2とかmat1*1とか。ベクトルと同じで要素全てに処理。• 行列とベクトルのかけ算とか,行列と行列の足し算とか・・・は必要なんだけど,算数の授業じゃないのでパス!

Page 67: Kandai R 入門者講習

データの形は• 基本は矩形•   では data.frame型といいます。変数名がつけられる行列です。• サンプルデータを読み込んでみましょう。

Page 68: Kandai R 入門者講習
Page 69: Kandai R 入門者講習

データの最初の数行を見せる head関数データの要約を見せる summary関数

Page 70: Kandai R 入門者講習

$で変数指定

Page 71: Kandai R 入門者講習

• 新しい変数を指定すると作られます$で変数指定

Page 72: Kandai R 入門者講習

最初につまづきそうなのは• 乗り換えるときに一番大変なのがデータの加工• 幾つかのポイントをご紹介

• ファイルからデータを読み込む• 先ほどの「新しく変数を作る」• データの一部を抜き出す

Page 73: Kandai R 入門者講習

データはどこ?• 多くの場合,データはファイルとして  外部にありますよね。• プロジェクトフォルダの中に入れましょう。• データはカンマ区切り,タブ区切りのテキスト形式で保存してください。

Page 74: Kandai R 入門者講習
Page 75: Kandai R 入門者講習
Page 76: Kandai R 入門者講習

読み込むのも関数ね• 代入先←関数名(ファイル名,ヘッダ,欠損値)• delim;テキストファイル, csv;カンマ区切り• ファイル名を直接指定するか file.choose関数

• 一行目に変数名あり= TRUE,なし= FALSE• 欠損値は文字,記号等を指定する

hoge1 <- read.delim("sample.dat",head=TRUE,na.strings="*")hoge2 <- read.csv("sample.csv",head=TRUE,na.strings=".")hoge3 <- read.csv(file.choose(),head=FALSE,na.strings="9")

Page 77: Kandai R 入門者講習

中身なぁに?• 読み込んだものは data.frame型になっています。• オブジェクトの中身,構造を見たいときは str関数

Page 78: Kandai R 入門者講習

データの一部を抜き出す

Page 79: Kandai R 入門者講習

あとは組み合わせ

Page 80: Kandai R 入門者講習

調理例

Page 81: Kandai R 入門者講習
Page 82: Kandai R 入門者講習

モデルの表記法• 関数の意味やモデルの詳細はヘルプに譲るとして・・・• 独立変数(説明変数)と従属変数(被説明変数,目的変数)の関係を表す formulaを知っておくと,少しばかり捗ります。• 従属変数〜独立変数+独立変数・・・という書き方をします。

Page 83: Kandai R 入門者講習

モデルの表記法上から順に,分散分析,回帰分析,重回帰分析,因子分析因子分析は従属変数がないことがわかる

ピリオドは「データセット内のすべての変数」iris[,-5]は 5列目は削除してね,という意味

Tips

Page 84: Kandai R 入門者講習

あとはパッケージ!

Page 85: Kandai R 入門者講習

ダウンロードと実装• インストールするだけでは使えません。• 「ここで装備していくかい?」= library関数• library(psych)とすると psychパッケージの関数群がつかえるようになります。

Page 86: Kandai R 入門者講習

逆に悩ましい• パッケージは 8000以上!• どれを使っていいのかわからない・・・• そういうときは,「領域ごとに関係あるパッケージをまとめてインストールしちゃうパッケージ」を使うといいでしょう

Page 87: Kandai R 入門者講習
Page 88: Kandai R 入門者講習

ネットは広大だわ• 何を,どう使うか,色々調べるヒントがあります• Rjpwiki;日本語の R情報がここに集結• 手前味噌ですが「山口大学教育学部教育心理学コース」のサイトには動画やテキストが公開されています。

• http://psycho.edu.yamaguchi-u.ac.jp/ へGo!

• 専用検索サイト, seekRも

Page 89: Kandai R 入門者講習

テキストも充実してきました

Page 90: Kandai R 入門者講習

宣伝

Page 91: Kandai R 入門者講習

Enjoy

Page 92: Kandai R 入門者講習

thank you@kosugitti

.