Excelファイルからデータを取り出す/データを書き込むパッケージ 〜 XLConnect
パッケージ「XLConnect」をインストールして、次のように使えばいい。
> install.packages("XLConnect") 警告: package ‘XLConnect’ is in use and will not be installed > library("XLConnect") > orderBook<-loadWorkbook("order.xlsx") > signals=readWorksheet(orderBook,sheet="order",header=TRUE) > signals Date Order_Type Signal 1 2016-01-04 1 AXB 2 2016-01-05 3 GOOGLE 3 2016-01-06 1 VIX 4 2016-01-07 1 BK 5 2016-01-08 3 AAPL
正直途中、下記のようにCSVを読もうとしてエラーになり、詰まった。
> orderBook<-loadWorkbook("order.csv") エラー: IllegalArgumentException (Java): Your InputStream was neither an OLE2 stream, nor an OOXML stream
深くは追求していないけど、パッケージ内部で使用している入力ツールがCSVに対応していないのか?
とりあえず、エクセル読み込めたから放置。
ここまではデータ読み取り。ここからはデータ書き込み。
> orderBook<-loadWorkbook("order.xlsx", create = TRUE) > createSheet(orderBook, name="output") > df <- data.frame(a = c(1,2,3), b=c(4,5,6)) > writeWorksheet(orderBook, data=df, sheet="output", header=TRUE) > saveWorkbook(orderBook, file ="order.xlsx")