エクセルは、ビジネスや研究などさまざまな場面で利用されている表計算ソフトです。エクセルのデータをRで分析したい場合、まずエクセルファイルをデータフレームに読み込む必要があります。
Rのread_excel関数を使えば、エクセルファイルを簡単にデータフレームに読み込むことができます。read_excel関数の使い方を覚えれば、エクセルのデータを簡単にRで扱うことができるようになります。
本記事では、read_excel関数を使ってエクセルファイルをデータフレームに読み込む方法を解説します。シート名を指定して読み込む方法や、特定の列のみを読み込む方法など、さまざまな読み込み方法を紹介します。
read_excel関数の使い方をマスターすれば、エクセルのデータを簡単にRで分析することができます。ぜひ本記事を参考に、read_excel関数の使い方を覚えてみてください。
エクセルファイルの準備
日本の産業別実質GDPの推移のエクセルデータを用意しました。Rで読み込んでいくのは青色のセルのみ読み込んでいきます。
ちなみに、ファイル名は「GDP.xlsx」として保存してあります。あと、Sheet名=Sheet3です。
read_excel関数でのエクセルファイルの読み込み
スクリプトは次のようになります。
library(readxl)
# Excelファイルのパス(ご自身のファイル名と場所に書き換えてください)
file_path <- "F:/ブログ用/17R/関数辞典/04 read_excel/GDP.xlsx"
# read_excel関数のオプションを設定してデータフレームを読み込む
df <- read_excel(
path = file_path,
sheet = "Sheet3", # シート名
range = "A2:I22", # 読み込む範囲
col_types = c("text", rep("numeric",8)), # 列のデータ型を指定
na = "NA", # 欠損値として扱う文字列
skip = 1, # 最初の1行をスキップ
n_max = 50 # 読み込む最大行数
)
# 読み込んだデータフレームを表示
print(df)
col_types = c("text", rep("numeric",8))の意味は、最初の1列目は文字データで残りの8列はnumeric(数値)データを繰り返しますという意味になります。
スクリプトを実行すると、右側のEnvironmentタブにdfファイルが出てくるのでそこを開いてみましょう。次の写真の赤い点線のところです。
dfをクリックすると、左側に内容が表示されます。
このように最初にお示ししたエクセルファイルと同じものがRで読み込めていることが確認できます。
read_excelのオプション設定一覧
read_excel
関数は、Excelファイル(.xls
または .xlsx
形式)を読み込むために readxl
パッケージで提供されています。この関数には、ファイルの読み込みをカスタマイズするための様々なオプションがあります。以下に主なオプションを紹介します:
-
path: 読み込むExcelファイルのパス。
-
sheet: 読み込むシートを指定します。シートの名前(文字列)または位置(数値)で指定できます。
-
range: 読み込むセル範囲を指定します。A1形式のセル範囲(例: "B3:D87")または
cell_limits
オブジェクトで指定できます。 -
col_names: 列名として使用する行を指定します。
TRUE
(デフォルト)の場合、最初の行が列名として使用されます。FALSE
の場合、列名は自動生成されます。また、文字列のベクトルを指定して列名を直接設定することもできます。 -
col_types: 列のデータ型を指定します。利用可能な型には "guess"(デフォルト、自動推定)、"logical"、"numeric"、"date"、"datetime"、"text" があります。各列に対して個別に型を指定することもできます。
-
na: 欠損値として扱う文字列を指定します。デフォルトは
NA
です。 -
skip: 読み込みを開始する前にスキップする行数を指定します。
-
n_max: 読み込む最大行数を指定します。
-
guess_max: データ型を推測する際に使用する最大行数を指定します(デフォルトは1000行)。
-
progress: 大きなファイルを読み込む際に進捗バーを表示するかどうかを指定します。