R オブジェクトの作成:
テキストファイルからのデータの読み込み
UBC/informatics/r/data_input_text
このページの最終更新日: 2025/12/22関連ページ
広告
csv ファイルを読み込む
csv は comma separated values の略で、csv ファイルとはコンマ、スペース、タブなどを区切り文字としたテキストファイルである (参考: csv ファイルとは)。
read.csv() 関数
R base パッケージにある read.csv() 関数が基本である。データフレームを csv ファイルとして書き出すときは write.csv なので、read.csv と合わせて覚えておくと良いだろう。
- 同じディレクトリに csv ファイルがない場合は、もちろんパスを指定しなければならない。現在のディレクトリは > getwd() で調べることができる。
- ヘッダー行に情報がない場合、X という文字が割り振られる。複数あると X, X.1, X.2... となる。
- データに情報がない場合、NA が割り振られる。
- row.names = 1 は、1 行目を列の名前として使うという意味。
列のクラスを指定するときは、colClasses を使う。
全ての列を文字列として読み込むには df <- read.csv("data.csv", colClasses = "character")
特定の列だけ指定したい場合は、列名をリスト形式で指定する。df <- read.csv("data.csv", colClasses = c(Column1 = "character", Column2 = "character"))
read.csv() で読み込まれたデータは、typeof() で調べるとリスト形式になっているようだ。
A_matrix = as.matrix(A)
read_csv() 関数
read_csv() は、tidyverse パッケージ に含まれている readr パッケージの関数である。read.csv() との違いもいずれ詳しく調べたいが、全般にこちらの方が便利に思える。
read.csv() と read_csv() の挙動の違い。
- read.csv では空の csv ファイルがあるとエラーになり、for loop は止まってしまうが、read_csv では何も読み込まず次に進みそう。
- read.csv では、列名にハイフンや [ などの記号があると . に変換されて読み込まれる。read_csv では変換されずそのまま読み込まれる。
read.delim() 関数
csv の区切りが反映されない場合、read.delim を使うこともできる。形式は同じ。
広告
「あとがき」で当サイトを参考にしたと書いてくれているラノベです。Kindle Unlimited で読めました。ストーリーと文章が良く、面白かったです。
tsv ファイルを読み込む
tsv ファイル (タブ区切りテキストファイル) は read.table で読み込める。
- 1 行目をヘッダーにしたいときは header = TRUE とする。
広告
References
- R でのテキストファイル読み出しと書き込み. Link: Last access 2020/01/25.
- R:read.csv / read.tableで型と列名を指定して読み込む。Link: Last access 2020/01/25.
- 井関龍太のページ. Rでクリップボードからデータを読み込む. Link: Last access 2018/12/09.
コメント欄
サーバー移転のため、コメント欄は一時閉鎖中です。サイドバーから「管理人への質問」へどうぞ。
