今日のR〜散布図を描く

KIN148


今日は単純にふたつの変数をx軸とy軸にした散布図を描くところまでやります。
データを作るのはめんどくさいのでExcelでやることにします。

Excelにこのような表を作ります。

「ファイル→名前を付けて保存」から、ファイル形式をcsvにして作業ディレクトリに保存します(今回は、"C:\R"という作業ディレクトリを作ってそこに保存します)。csvだとシート1枚分しか保存できないので、「それでもよいか?」と聞いてくるので、OKします(ここでは"smpl.csv"というファイル名で保存しています)。
csvファイルをノートパッドなどで開くと、こんな感じになっています。

Rを起動します。まず作業ディレクトリを確認しましょう。

> getwd()

もしさっきcsvファイルを保存した作業ディレクトリと違っている場合、作業ディレクトリを変更します。

> setwd("C:/R")

さっき保存したファイルから、「データフレーム」としてデータを読み込みます。

> x <- read.csv("smpl.csv")

xというオブジェクトに、データフレームが代入されました。データフレームとは、data.frameクラスを持つリストのことで、「リスト」とは「コンポネント」という成分の集まりから成るオブジェクトのことです。たぶん。よくわかりませんが。
では、きちんと読み込まれているか確認しましょう。

> x
               国名 最近年 女性労働力率 合計特殊出生率 第三次産業従事者比率
1    オーストラリア     95         67.5           1.82                 72.1
2      オーストリア     97         74.1           1.36                 63.8
3          ベルギー     95         79.6           1.55                 71.0
4            カナダ     95         76.5           1.64                 73.0
5        デンマーク     96         80.6           1.75                 69.0
6      フィンランド     97         77.4           1.74                 65.5
7          フランス     97         77.3           1.71                 69.9
8            ドイツ     96         73.9           1.32                 60.2
9          ギリシア     97         64.9           1.32                 56.9
10     アイスランド     96         83.9           2.12                 66.2
11     アイルランド     97         72.1           1.92                 61.7
12         イタリア     97         59.9           1.22                 61.2
13             日本     97         62.6           1.39                 61.6
14   ルクセンブルク     96         64.6           1.77                 70.9
15         オランダ     97         77.1           1.54                 74.1
16 ニュージーランド     92         64.0           2.13                 66.3
17       ノルウェー     97         81.1           1.86                 71.6
18       ポルトガル     96         81.8           1.44                 56.4
19         スペイン     97         70.3           1.15                 61.7
20     スウェーデン     97         81.5           1.53                 71.3
21           スイス     97         76.3           1.48                 68.6
22           トルコ     97         29.9           2.48                   NA
23         イギリス     97         73.4           1.71                 71.3
24   アメリカ合衆国     95         74.9           2.02                 73.1

プロンプトにxと打ち込んでリターンすると、そのデータフレームを表示してくれます。22行目の5列目がNA(欠損値)になっていますが、もとのcsvファイルではそこは空欄でした。Rがかってに欠損値として解釈してくれます。
ではこれを散布図にしてみましょう。
x軸には「女性労働力率」を、y軸には「合計特殊出生率」を選びます。
先に、データフレームはコンポーネントから成るリストだと述べました。コンポネントはリストの中で順番を持っています。x軸に選びたいのは3番目(表でいうと3列目)、y軸に選びたいのは4番目(表でいうと4列目)ですので、散布図を描く記法は次のようになります。

> plot(x[[3]],x[[4]])

このような図が得られました。Excelで作ることができる表にくらべればまだまだショボイですが、今日はひとまずこれで満足しておきましょう。