相関係数

さて、今回は分析をやる際の基本である相関をやってみましょう。

相関は極めて簡単なので、サクッといってみましょう!!

データは以前subsetの回でご紹介したデータを使ってみます。



これですね。

相関係数を出すのは、簡単です。

cor(変数1,変数2)

実際に、やってみるとこんな感じです。



相関メチャ高い!!!
まぁ、擬似的に作ったデータなので当然なんですが...

ちなみに、相関係数の大体の見方は下記の通りです。
.00~.20→ほとんど相関がない
.20~.40→弱い相関がある
.40~.70→比較的強い相関がある
.70~1.0→強い相関がある

以上が基本の使い方になります。
しかし、このやり方では多数の変数の相関係数を一気に算出したい場合には手間がかかってしまします。

そんな時は、こうします。

これは、dataの3行目から8行目の変数の全ての組み合わせでの相関変数(相関行列)を出力してくれます。

これでたくさん変数があっても、一瞬で相関係数が分かりますね。
相関係数を算出するときに発生するエラーの大抵の原因は欠損値です。
欠損値があると相関係数が正常に算出されません。
そのために、欠損値の処理を置こうなオプションがcor関数にはあります。
代表的なものは、下記2点になります。

pairwise.obs・・・欠損値とペアになっているものだけを、使わない。ペアで欠損値の処理を行うので、最大限にデータを使える。
と、書きましたが自分でもうまく書けていないことがわかるので、もう少し丁寧に説明します。
相関係数のイメージは、下記図のようにx軸とy軸の値でプロットしていって計算します。欠損値があった場合pairwise.obsを使うとこのプロットの点が1つなくなる感じですね。

complete.obs・・・欠損のある行は使わない。
つまり、pairwise.obsよりもデータが大きく減ってしまうことがあります。na.omit関数に似ていますね。使い方を気をつけないと一気にデータ数が減ってしまいますね。

基本的には、pairwise.obs関数を使えば問題ないです。
使い方は以下の通りで、最後に引数として追加すれば良いだけです。




さて、次に気になるのが相関係数を算出するとやたらと表示される桁数が大きいことです。前出の例でも小数点以下10桁も表示されていて見づらいですよね。
そんな時は、round関数の出番です。
round関数はExcelでも使える関数なので、知っている人も多いかと思います。
round関数の使い方は以下の通りです。

round(数値や計算式 , 表示桁数)

実際に使ってみると、以下のような感じです。

この例では小数点以下3桁の表示になっているのでさっきより、遥かに見やすくなりましたね。
卒論などを提出する際にも、小数点以下3桁くらいになるかと思いますので、このな小技を使っていくと便利になります。

コメント

このブログの人気の投稿

subsetで必要なデータだけを、取り出す。

Googleフォームの使い方(基本編)

Rでの、データの基礎統計量の算出(summary,describe)

Googleフォーム使い方(応用編) 回答に応じて分岐、セッションの移動

Googleフォームの使い方(応用編) 設定の使い方