はじめに
これまでの回で、Rの内部でデータを作成し、データフレームとして扱う方法を学びました。しかし、実際のデータ分析プロジェクトでは、データはExcelシートやCSVファイルといった外部ファイルとして提供されることがほとんどです。
今回は、データ分析の出発点となる**「外部ファイルをRに読み込む方法」と、分析結果を「ファイルとして保存(書き出し)する方法」**を学びます。特に、最も一般的に使われるCSVファイルとExcelファイルの扱いに焦点を当てます。
Rの作業ディレクトリ(Working Directory)
ファイルを読み書きする前に、Rが現在「どこで」作業しているかを知ることが重要です。これを作業ディレクトリと呼びます。
getwd(): 現在の作業ディレクトリを確認する。setwd(): 作業ディレクトリを変更する。
# 現在の作業ディレクトリを確認
getwd()
# 作業ディレクトリを変更したい場合(パスは自身の環境に合わせる)
# setwd("C:/Users/YourName/Documents/R_Project")
RStudioでは、右下の「Files」ペインからフォルダを移動し、「More」→「Set As Working Directory」をクリックすることで、簡単に作業ディレクトリを設定できます。ファイルを読み込む際は、この作業ディレクトリにファイルを置いておくと、ファイル名を指定するだけで読み込めるので便利です。
CSVファイルの読み込みと書き出し
CSV (Comma-Separated Values) は、カンマで値を区切ったシンプルなテキストファイルで、データ交換の標準的な形式です。
CSVファイルの読み込み:read.csv()
Rには、CSVファイルを読み込むための read.csv() という強力な標準関数が用意されています。
準備: 以下のような内容の sample_data.csv というファイルを作業ディレクトリに作成してください。
Name,Age,Score Alice,20,85 Bob,22,92 Charlie,21,78
それでは、このファイルを読み込んでみましょう。
# CSVファイルを読み込み、dfという名前のデータフレームに格納
df <- read.csv("sample_data.csv")
# 読み込んだ内容を確認
print(df)
# Name Age Score
# 1 Alice 20 85
# 2 Bob 22 92
# 3 Charlie 21 78
str(df) # 構造を確認
# 'data.frame': 3 obs. of 3 variables:
# $ Name : chr "Alice" "Bob" "Charlie"
# $ Age : int 20 22 21
# $ Score: int 85 92 78
read.csv() は、1行目を自動的にヘッダー(列名)として認識し、各列のデータ型を適切に判断してデータフレームを作成してくれます。
CSVファイルへの書き出し:write.csv()
次に、Rで加工したデータフレームをCSVファイルとして保存する方法です。write.csv() 関数を使います。
# 分析で新しい列を追加したと仮定 df$Pass <- df$Score >= 80 print(df) # Name Age Score Pass # 1 Alice 20 85 TRUE # 2 Bob 22 92 TRUE # 3 Charlie 21 78 FALSE # データフレームを新しいCSVファイルとして書き出す # row.names = FALSE は、行番号をファイルに含めないための重要なオプション write.csv(df, "processed_data.csv", row.names = FALSE)
これを実行すると、作業ディレクトリに processed_data.csv という新しいファイルが作成されます。
Excelファイルの読み込みと書き出し
ビジネスの現場では、Excelファイル(.xlsx)でデータを扱うことも非常に多いです。Excelファイルを扱うには、専用のパッケージをインストールする必要があります。
readxl パッケージのインストールと読み込み
Excelファイルの読み込みには readxl パッケージが非常に便利です。まずはインストールしましょう。
# パッケージが未インストールの場合のみ実行
install.packages("readxl")
インストールが終わったら、library() 関数でパッケージを読み込んでから使います。
# readxlパッケージを読み込む
library(readxl)
# Excelファイルの "Sheet1" を読み込む
# (事前に sample_data.xlsx というファイルを作成しておく)
excel_df <- read_excel("sample_data.xlsx", sheet = "Sheet1")
# 内容を確認
print(excel_df)
read_excel() は、シート名やシート番号を指定して、特定のシートのデータを読み込むことができます。
writexl パッケージを使った書き出し
Excelファイルへの書き出しには writexl パッケージがシンプルで高速です。
# パッケージが未インストールの場合のみ実行
install.packages("writexl")
# writexlパッケージを読み込む
library(writexl)
# データフレームをExcelファイルとして書き出す
write_xlsx(df, "processed_data.xlsx")
まとめ
今回は、Rで外部のデータを扱うための基本的なスキルを学びました。
- 作業ディレクトリを意識することが、ファイル操作の第一歩。
- CSVファイルは、標準関数の
read.csv()とwrite.csv()で簡単に扱える。 - Excelファイルは、
readxlパッケージで読み込み、writexlパッケージで書き出すのが便利。
これで、手元にあるデータをRの世界に持ち込み、分析を始める準備が整いました。実際のデータ分析では、データを読み込んだ後に、目的の形に整える「データ加工」や「データクレンジング」といった作業が必要になります。
コメント