[4.1] 共分散と相関係数 |
[4.2] 散布図 |
[4.3] 相関行列、散布図行列 |
[4.4] 相関係数と範囲の効果 |
2つの連続変量の関係を表す尺度として、ピアソンの積率相関係数(correlative coefficient)があります。相関係数rは、共分散を、XとYの標準偏差の積で割った値です。共分散(covariance)は、Xの偏差とYの偏差の積の総和です。
共分散と相関係数の値を公式通りに算出することもできますが、よく使うので、関数が用意されています。
2変量X、Yの値をX軸、Y軸にプロットしたグラフを散布図(scatter plot)と言います。Rで散布図を描くには、2変量を指定するだけです。変量1がX軸、変量2がY軸となります。
plot( ) には、目的に応じて、データ点の形、色など、さまざまなオプション指定が可能となっています。
主な色指定 | 表示色 | 主な形指定 | 表示形 |
---|---|---|---|
col=1, col="black" | 黒 | pch=1 | ○ |
col=2, col="red" | 赤 | pch=2 | △ |
col=3, col="green" | 緑 | pch=3 | + |
col=4, col="blue" | 青 | pch=4 | × |
col=5, col="aqua" | 水色 | pch=5 | ◇ |
col=6, col="pink" | 桃色 | pch=6 | ▽ |
col=7, col="yellow" | 黄色 | pch=16 | ● |
col=8, col="grey" | 灰色 | pch=17 | ▲ |
通常は、グラフ画面に1つのグラフが描画されるようになっています。時として、複数のグラフを並べて描画したいときがあります。そのようなときは、描画する際の設定モード(parameter)のオプション指定を行います。複数描画の場合には、mfrow( )を使います。使用後は、デフォルトの設定に戻しておきます。
散布図の上に、回帰直線を追加することができます。直線を引くにはlines( )関数を用いますが、2つの点のX座標とY座標の値を指定する必要があります。y切片aおよび傾きbの値がわかっているときには、abline( )関数を使います。
直線に関しても、線の種類、色や太さなどをオプション指定することができます。
回帰直線の値を求めるには、線形モデルlm( )を使って回帰分析を行う必要があります。回帰分析の結果の要約はsummary( )で示されます。この結果を見て、abline( )関数に切片(intecept)と傾きの推定値(estimate)を入力するか、あるいは、回帰分析の結果を引数として渡すこともできます。
最後に、グラフ中にテキストを追加するには、text( )を使って、追加するテキストと追加する場所を指定します。場所を座標(x,y)で指定することもできますが、locator(1)とするとマウスによって場所指定することもできます。指定座標やマウスの+の位置が、貼り付けられるテキストの中心となります。
テキストをグラフの周辺に追加するには、mtext( ) を使います。(mはmarginの意味です)4つの周辺がありますので、数値で場所を指定します。side=3とするとグラフの上辺に表示されますが、これは主タイトル(グラフキャプション)よりも下の位置です。
複数の変量の間の、2変量の相関係数や散布図を総当たりで求めることができます。cor( )あるいはpairs( )関数に、対象となる変数をベクトルにして渡します。
対象となる変数の列が連続しているときは ":" で指定できます。列(column)が連続していない変数を束ねるには、cbind( )関数を使って、一度新たなデータセットを作ってから、作業します。
投書データの中の数量データ(年齢を含める)だけからなる新たなデータセットを作り、相関行列と散布図行列を作ってみましょう。
ある2変量の、全体の相関係数と、全体のうちの一部だけの相関係数を比較すると、一部だけのデータの相関係数のほうが小さくなると言われています。
全体データの中から、条件を満たす一部のデータを抽出するには、下位集合を取るsubset( )関数を用います。今、対象変数をdf, 抽出条件を指定する変数をxとします。
ここでは、「課題」に沿って、漢字率と名詞率データの一部を抽出して、全体の相関係数と比較してみます。抽出条件を年齢が30歳以上50歳未満と設定します。
全体データの散布図と、一部データの散布図を比較するために、グラフィック画面に2つのグラフを並べて描画してみましょう。
左が全体データの散布図で、右が一部データの散布図です。散布図で相関を比較すると違いがよくわかりません。相関係数で比較すると、全体で0.72, 一部データのほうが0.68ですので、数値的には小さくなっています。