Rで基本的な統計量を求める。
東京大学医学部老年病科の矢可部です。
基礎、臨床研究の統計解析でRを用いています。
学生や研修医の指導に使うという目的もあり、noteに記事を書いています。
前回の記事はこちらです。
今回は、Rに読み込んだデータで基本的な統計量を計算します。
サンプルデータ
この記事で扱うデータが入った"Rdata1.xlsx"ファイルは、下からダウンロードできます。なおこれは前回の記事で用いたものと同じなので、すでにダウンロードした方は不要です。
str()でデータ構造を確認
まずはRにデータを読み込みます。ここではMacで行います。
Windowsでのやり方を含めて詳しく知りたい方は、上にある前回の記事をご覧ください。
ここで、str()関数を用います。
以下のように、データフレームであるdatの項目名、変数の型、データの最初の部分が表示されます。
"20 obs. of 8 variables"とあるのは、8の変数に20のobservations(観測値、ここでは患者)があるという意味です。
変数の型として、intはinteger(整数)、chrはcharacter(文字列)、numはnumeric(小数)を意味します。
平均と標準偏差を求める
datで、各項目の平均と標準偏差を求めてみましょう。
平均はmean()関数、標準偏差はsd()関数で求めます。
年齢(age)の場合、以下のように入力します。
"$"でデータフレームの中の変数を指定できます。
実行すると、結果が以下のように表示されます。
平均年齢は60.2歳、標準偏差は約9.9歳とわかりました。
なお"dat$"の部分は省略することができ、同じ結果が得られます。
これは先ほどのattach(dat)が「ここではdatのデータを使います」という指定になるため、いちいち"dat$"を書かなくてもわかるからです。
しかし同時に複数のデータセット(たとえば元データのサブグループ)の解析をするケースもあります。そのため解析対象を明示するためにあえて入れました。
最小値、最大値、四分位数を求める
最小値、最大値、四分位数を求めるには、quantile()関数を用います。
年齢で求めてみましょう
左から順に、最小値、第一四分位数、第二四分位数(中央値)、第三四分位数、最大値となります。
要素ごとに集計する
次に性別(sex)の項目で、男性(0)と女性(1)の人数を数えてみましょう。
table()関数を用います。
実行すると以下のように表示されます。
男性が10人、女性が10人とわかりました。
練習問題
理解度の確認のための簡単な練習問題を書いておきます。
今回は以上です。今後ともよろしくお願いします。