本稿では,Rを使って散布図を作成する方法と,相関係数を算出して相関の強弱の判断を行う方法に関して説明する。
散布図は,量的データ同士の関係性を可視化するのに有用である.散布図を作成するには,plot()関数を使うことで簡単に作成することができる.ここでは,気温とアイスの売り上げの関係を散布図で表現することを想定して説明する.
#dataには,気温,アイスの売り上げ,湿度,カイロの売り上げデータが格納されている
#dataに格納されている気温とアイスの売り上げの関係を散布図で表現する
#引数に関係性を可視化したい量的データをふたつ入れる
par(family="Osaka")#図中に日本語を表示するためのフォント設定
plot(data$気温,data$アイスの売り上げ)
#plot関数を実行すると,右下Plotsエリアに散布図が作成される.
複数の量的データの関係性を一度に可視化したい場合には,pairs()関数を用いると便利である.pairs()関数では,引数に指定したデータの全ての組み合わせの散布図(散布図行列)を作成することができる.引数には複数の量的データが格納されているオブジェクト名を指定する.
#dataには,気温,アイスの売り上げ,湿度,カイロの売り上げデータが格納されている
#dataに格納されている全ての変数の組み合わせの散布図を作成する
pairs(data,header=T)
#データの1行目がデータラベルの場合,引数にheader=Tを指定する
#pairs()で作成した散布図行列はPlotsエリアに表示される
また,近似直線を作成することで散布図上で可視化されたデータの関係性を直線で表現することもできる.Rで散布図上に近似直線を作成するには,まずlm()関数を使って直線の式を求める必要がある.
#dataに格納されているデータのうち,気温とアイスの売り上げデータの散布図を作成し,近似直線を作成する
#lm()関数を使って,直線の式を求める
plot(data$気温,data$アイスの売り上げ)
data_line<-lm(data$アイスの売り上げ~data$気温)
#lm()で求めた直線の式は,summary()で確認することができる
summary(data_line)
次にlm()関数で求めた直線の式をabline()関数によって可視化する.abline()の引数にlm()の結果を代入したオブジェクト名を入れることで実行できる.
#lm()で求めた直線の式を可視化する
#abline()の引数にlm()の実行結果を指定する
abline(data_line)
#abline()の実行結果は,事前に作成した散布図上に表示される
ここまで散布図と近似直線による量的データの可視化方法に関して説明した.作成した散布図からは,量的データ間の関係を可視化することはできる.しかし,関係の強弱を判断することはできない.関係の強弱を判断するには,相関係数を算出することで判断できる.
相関係数は量的データの関係の強弱を-1.0~1.0の数値で算出する.相関関係の絶対値において,0.2以下でほとんど関連がない,0.2~0.4で弱い相関,0.4~0.7で中程度の相関,0.7以上で強い相関があると判断することができる.また正の相関では一方の変数が増えるともう一方の変数も増える傾向にある,負の相関では一方の変数が増えるともう一方の変数が減る傾向にあることを意味する.Rで相関係数を算出するには,cor()関数を使用する.cor()関数では,引数に相関係数を算出したい量的データを入れる.
#dataには,気温,アイスの売り上げ,湿度,カイロの売り上げデータが格納されている
#気温とアイスの売り上げの相関係数を算出する
cor(data$気温,data$アイスの売り上げ)