方法
test.xlsxというファイルのSheet1に以下セルがあるとして
Name | Age | Sex |
Ken | 30 | M |
Yumi | 25 | F |
Takashi | 28 | M |
openxlsxライブラリの関数read.xlsx
を利用するとdata.frameとして取得可能。
> wb <- read.xlsx("test.xlsx") > wb Name Age Sex 1 Ken 30 M 2 Yumi 25 F 3 Takashi 28 M
型を確認すると以下のようによしなに扱ってくれる。
> str(wb) 'data.frame': 3 obs. of 3 variables: $ Name: chr "Ken" "Yumi" "Takashi" $ Age : num 30 25 28 $ Sex : chr "M" "F" "M"
以下、補足です。
補足
インストールは以下で可能です。
> install.packages("openxlsx") ... パッケージ ‘Rcpp’ は無事に展開され... パッケージ ‘zip’ は無事に展開され... パッケージ ‘openxlsx’ は無事に展開され...
read.xlsx
自体は以下です。引数もしっかり指定できます。
> read.xlsx function (xlsxFile, sheet = 1, startRow = 1, colNames = TRUE, rowNames = FALSE, detectDates = FALSE, skipEmptyRows = TRUE, skipEmptyCols = TRUE, rows = NULL, cols = NULL, check.names = FALSE, namedRegion = NULL, na.strings = "NA", fillMergedCells = FALSE) { UseMethod("read.xlsx", xlsxFile) } <bytecode: 0x0000000004797f90> <environment: namespace:openxlsx>
行に空白があると要注意で
Name | Age | Sex |
Ken | 30 | M |
Yumi | 25 | F |
Takashi | 28 | M |
は
> wb Name Age Sex 1 Ken 30 M 2 Yumi 25 F 3 Takashi 28 M
のように詰められます。
何かが入っていれば
Name | Age | Sex |
Ken | 30 | M |
a | ||
Yumi | 25 | F |
Takashi | 28 | M |
以下のようにNAが挿入されます。
> wb Name Age Sex 1 Ken 30 M 2 a NA <NA> 3 Yumi 25 F 4 Takashi 28 M
直接xlsxファイルを扱えるので、結構便利なので覚えておくとどこかで役立つやもしれません。