閉じる
閉じる
閉じる
  1. 用量反応曲線の意味と薬の安全性について
  2. インタール細粒10%で起こった下痢の事例からわかる添付文書の使い方
  3. 代表値の意味と統計ソフト【R】で代表値を求める方法
  4. ゾピクロンとエチゾラムが向精神薬に指定されて困ること
  5. 表計算ソフトに置き換えてRのベクトルを理解する
  6. カロナール500mg/1回を12歳の小児に使っていいのか?という話
  7. 度数分布表とヒストグラムってどう使うの?Rで実際にやってみた!
  8. 記述統計とは?どんな目的でデータを整理するのか?
  9. データの分析に必要な尺度水準について
  10. 統計をゼロから勉強するときの指針みたいなもの
閉じる

とある薬剤師の外部記憶

表計算ソフトに置き換えてRのベクトルを理解する

Rではベクトルという概念でデータを取り扱うのですが、はじめは理解が難しいので、Rは初心者に優しくないと言われています。

でも、Excelのような表計算ソフトに置き換えて考えるとそれほど難しいことでは無いのです。

むしろ、データを取り扱うなら表計算ソフトよりも便利なことがたくさんあります。

今回はこのベクトルを中心に、Rの基本機能について解説していこうと思います。

表計算ソフトの行と列をRに置き換えて考える

例えば、5人の患者の体重のデータを集めたとします。

Aさん:58kg
Bさん:79kg
Cさん:46kg
Dさん:60kg
Eさん:61kg

これを表計算ソフト、例えばExcelに打ち込んで1つの表データにします。

2016-10-04_14h12_36

このときの「患者」の列と「体重」の列が、Rで言うところのベクトルになります。

Rでこのデータを扱うときは

というふうに「c() 」関数を使って読み込みます。

cは「コンストラクト(組み立てる)」という意味らしいです。

このときの「<-」は代入記号と言って、「weightという名前でこの数字(ベクタ)を登録するよ~」という命令になります。

データを呼び出すときは、保存した名前を入力します。

2016-10-04_22h33_25

「全部手で打つの?」
と思った方は安心してください。
今回はRの基本操作の説明なので、データ入力をあえてこの方法にしています。
もっと便利な方法もありますが、そのあたりはまた別のところで紹介していきますね。

表計算と同じ計算をRでやってみる

ベクタとして保存したデータは色々な計算を行うことができます。

表計算ソフトでは平均値を求めたり、合計を求めたりをセルに数式を入力して行います。

2016-10-04_22h48_18

体重の合計には基本的に意味は無いのですが、平均値には意味がありますね。

Rで平均値を求めたいときは

というふうに「mean()」関数を使います。

2016-10-04_22h52_28

平均値を値として読み込ませておきたいときは、ベクタを作ったときのように代入の「<-」で新しい名前のデータとして登録します。

保管する名前として「.(ドット)」を使うことができるので、このように活用すると区別をつけやすくて便利です。

保管したデータ(今回は平均値)は呼び出して表示したり、他の計算に使うことができます。

数値計算の関数はExcelとは比較にならないくらい多いので、基本的に同じような計算はいくらでもできます。

  • 合計値を知りたければ「sum()」
  • 分散なら「var()」
  • 中央値なら「median()」

という感じで、Excelのように様々な関数を使うことができます。

表計算ソフトが苦手にしている一括計算をRでやってみる

ベクトルの計算の一番いいところは、表計算にはない一括計算の概念があるところです。

新たに身長のデータを集めたとします。

Aさん:164cm
Bさん:173cm
Cさん:155cm
Dさん:180cm
Eさん:149cm

このデータを使ってそれぞれの患者のBMI(ボディ・マス・インデックス)を求めてみます。

\mbox{BMI} = \mbox{Weight(kg)} \div \mbox{Height(m)}^2

 

表計算ソフトだと、まずデータを打ち込みして、

2016-10-04_23h18_49

隣の列にそれぞれの人のBMIを求める数式を入れますね。

2016-10-04_23h39_12

身長は普通cm(センチメートル)の単位なので、100で割ってm(メートル)へなおしています。

1つのセルだけ入力して、後はコピーペーストで一応求めることができます。

この計算だと5個なのですぐできますが、300とか1000とかのデータを扱っていると、画面のスクロールが結構面倒です。

 

Rで同じことをやってみると、Excelよりメチャクチャ簡単だということがわかります。

まずデータを入力します。

BMIを求めるには名前をつけたデータを使って

とするだけです。

2016-10-04_23h52_35

Rではベクトル同士を計算に使用すると、

  • 1番目の数値同士
  • 2番めの数値同士
  • ・・・
  • 最後の数値同士

という感じでベクトルの要素同士を計算してくれます。

高校数学に出てくるベクトルとか行列の計算とは違うのでその点は誤解のないようにしてください。

あとがき

Rは初心者には敷居が高いと言われていますが、表計算ソフトのように数値の一覧を見ながらデータを扱わないので、そんな印象なのかもしれません。

よく使うExcelのようなソフトと比べて使用してみると、統計に特化した専用のソフトで、使い勝手が凄くいいことがわかります。

大学の研究や医療統計の分野ではスタンダートになってきている統計ソフトなので、早いうちから覚えておいて損はないかなと思います。

では今回はこのあたりで。

 

関連記事

  1. 度数分布表とヒストグラムってどう使うの?Rで実際にやってみた!

  2. 代表値の意味と統計ソフト【R】で代表値を求める方法

コメント

  1. はじめまして

    R ずいぶん 気に入られておられるのですね。
    放送大学のオープンコースウェアで Rを使った授業が見られます 

    http://ocw.ouj.ac.jp/tv/1570188/

    15回すべて動画で見られます。

    本では
    新米探偵、データ分析に挑む
    ってのもあって、これは、人から聞きました。

    ビジネス活用事例で学ぶ データサイエンス入門

    も、なかなか面白いです。こちらは持ってます。私もR大好きです よろしく!

      • とある薬剤師
      • 2017年 1月 24日

      はじめまして。
      コメントありがとうございます。

      書籍のリンクがはみ出していたので少し修正させていただきました。
      ご了承ください。

      栄養学分野でのデータ解析にRを利用されているのですね。
      最近はRの利用者も増え、関連の書籍も大分充実してきましたね。
      ご紹介ありがとうございます。

      私の場合は統計の勉強にRを使っていると言った方が近いです。
      勉強方法などはこちらで紹介しているので、良かったら御覧ください。
      http://wb-nahce.info/study-statistics/

  1. この記事へのトラックバックはありません。

CAPTCHA


調剤薬局とドラッグストアで働いている三十路手前の薬剤師です。

もともとは「食いっぱぐれない」という理由だけで薬学部進学を目指しました。
今では自分の知識がそのままお客さん・患者さん・同僚の薬剤師・登録販売者の役に立って感謝されるのが嬉しく、楽しく勉強させてもらってます。

アーカイブ

スポンサードリンク

ページ上部へ戻る