[R]代表値を求める

サイト移転のお知らせ

移転先はこちらです。
[R]で代表値を求める
新たな記事は移転先に掲載しておりますので、そちらをご確認ください。

スポンサードリンク

Rの代表値

次の表は代表値の説明とRで代表値を求めるための関数です。

代表値

説明

Rの関数

平均値(算術平均) 全部のデータを足してデータの数で割れば求められる。

数式

mean()
中央値

データを小さい順に並べ、両側からちょうど真ん中にある数値のこと。
奇数個の数値からできているデータであれば真ん中。
偶数個の数値からできているデータでは真ん中2つの値の平均値。

median()
最頻値 データの中で最も多く現れる数値または文字などの記号。

table() → 標準機能
mfv() → modeestパッケージ

 

ここから先で使えるように予めデータを用意しておくことにします。

 

連続型データとしてx、離散型データとしてyを用意します。

x <- rnorm(200, mean=155, sd=5)
yprob <- c(0.05, 0.07, 0.09, 0.21, 0.07, 0.03, 0.08, 0.25, 0.1, 0.05)
y <- sample(0:9, 300, replace=TRUE, prob=yprob)

 

yprobはyを用意するためのベクタなので気にしないこと。

平均値を求めるmean関数

Rで平均値を求めるには、mean関数を使って

mean(x)

とすれば求められます。

 

Rの電卓的な書き方で平均値を求めるには次のようにします。

sum(x)/length(x)

 

length() はデータの個数を求める関数です。

 

先ほどの計算結果と同じになっているはずです。

 

求めた平均値をヒストグラムに書き加えるには abline関数を使います。

abline(v=mean(x), col="red")

 

abline関数は元々 数式 の直線を引くための関数ですが、 v=数値とするとx軸に垂直(バーティカル;vertical)な直線、グラフ上では 数式 の直線を引けます。

中央値を求めるmedian関数

中央値は単変量データを大小で並べ替えて、ちょうど真ん中に来た値のことを言います。

 

Rで実行するにはmedian関数を使って

median(x)

とすると求められます。

 

順を追って求めようとするには、これば正確ではありませんが、次のようにします。

xs <- sort(x)
xs[floor(length(xs)/2)]

 

中央値はデータの長さ(個数)が奇数個のとき、ちょうど真ん中の値を得ることができます。

 

データの長さが偶数個の場合は、真ん中の2つの値の平均値となるように求められます。

 

そのため、中央値を求めるにはmedian関数を使うことをおすすめします。

最頻値を求めるtable関数

最頻値はデータの中で一番多く出現した値のことを言います。

 

Rで最頻値を求めるにはtable関数を使って

yt <- table(y)
yt[yt == max(yt)]

とします。

 

これはRをインストールした時点ですぐ使える方法で、Rには最頻値を1回の処理で求める機能はありません。

 

最頻値を直接求めるにはmodeestパッケージのmfv関数を使うことになります。

 

これを使うには、modeestパッケージをインストールして、library関数で読み込む必要があります。

library(modeest)

これを行った上で

mfv(y)

とすれば最頻値を求めることができます。

 

結局手間がかかる作業なので、アンケート調査などで最頻値が常に必要になる場合に使うことをおすすめします。

スポンサードリンク

「[R]代表値を求める」と同じカテゴリーのページ

[R]無作為抽出をする
無作為抽出とはなにか? Rで無作為抽出をするにはsample関数を使う
[R]統計学的なデータの種類の扱い
Rで統計的(数学的)なデータの種類をどのように扱うかという話。
[R]度数分布表を作る方法
Rでは度数分布表を作る関数が用意されていない。 ここではRで度数分布表を作成するための方法と、度数分布表を自動で作成する関数を紹介している。
[R]ヒストグラムを描くhist関数
Rでは標準でヒストグラムを描くためのhist関数が用意されている。 ヒストグラムの書き方とヒストグラムを描くときの注意点について。
[R]散布度を求める
散布度をRで求める方法。 散布度にはいろいろな基準があるが、Rはほとんどすべてを網羅している。
[R]箱ひげ図を描く
Rではboxplot関数を使って、箱ひげ図を直接綺麗に描くことができる。 Rで箱ひげ図を描くための方法を説明する。
[R]正規分布に従う2次元データの作り方
Rで擬似データとして、正規分布に従う2次元データを作成する方法