- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!CSVファイルを読み込む
Rで扱うデータを入手するには、CSV形式で入手することをお勧めする。
仮に壊れていた場合に、エディタで簡単に内容を見たり補正できるし、データ容量が小さい。
エクセルファイルも扱えなくはないが、仮に壊れていたらそれで終わりであり、データの中の式やタブなどの扱いがとても面倒なので、やめたほうが良い。
#CSVファイルを読み込む
read.csv("filename.csv", sep=',', header=T)
オプションは他にもあるが、とりあえず上記が標準的な方法である。
* sep=',' データの区切り記号の指定
* header=T データの最初の行がヘッダ行になっているときTRUE
文字コードが異なるときには文字化けしてエラーが出ることがある。
その際には、文字コードをオプションで指定する。
* fileEncoding = 'Shift_JIS'
* fileEncoding = ''cp932'
Eは大文字。
なお、CSVファイルの存在箇所が深いディレクトリにあるような場合には、WindowsのExplorerを使ってファイルを探して指定するfile.choose()を利用するとよい。
f <- file.choose()
read.csv(f)
!表計算からクリップボード経由で読み込む
エクセルファイルなどを開いていて、さっとRで処理したくなる時に、いちいちCSVに落として・・・とやっているのはじれったい。そこはサクッとやりたくなる。
クリップボードに表を読み込んで、Rから読み取る方法がある。
x = read.csv("clipboard", header=T, sep="\t")
これで、クリップボードに読み込んだエクセルシートを簡単に読み込むことができる。
なお、header=Tは当然にヘッダがある場合にTだが、単純にデータを読む場合には不要ないしheader=Fとする。
また、'''sep="\t"'''はクリップボード上のデータがタブ区切りになっている(私の場合)ときであり、まずは'''sep=\t'''なしでお試しデータを数行だけ読み込んでみると、一行ずつフィールドなしのデータが読み込まれるので、そこで区切り文字を判別すればよい。
また、'''sep="\t"'''はクリップボード上のデータがタブ区切りになっている(私の場合)ときであり、まずは'''sep=”\t”'''なしでお試しデータを数行だけ読み込んでみると、一行ずつフィールドなしのデータが読み込まれるので、そこで区切り文字を判別すればよい。
:参照:
* file.choose()
* read.table()
{{category ファイル操作, データ読み込み}}