ExcelファイルをRから直接読み取るか、最初にcsvに変換するかを検討しようとしています。私は、Excel を読むことのさまざまな可能性について調査しました。また、Excel を読むことには、日付や数値列のデータ型の変換などの短所があることもわかりました。
XLConnect - Java に依存
read.xslx - 大きなデータ セットでは遅い
read.xslx2 - 高速ですが、目的の列クラスを指定するには colClasses コマンドを使用する必要があります
ODBC - 変換の問題が発生する可能性があります
gdata - perl に依存します
データ変換の問題を最小限に抑えて、少なくとも 100 万行を高速に処理できるソリューションを探しています。助言がありますか??
編集
最後に、csv に変換してから csv ファイルを読み取ることにしましたが、大きな csv ファイル (少なくとも 100 万行) を読み取るための最良の方法を見つけなければなりません。
read.csv.ffdf パッケージについて知りましたが、独自の colClass を設定できません。具体的にはこれ
setAs("character","myDate", function(from){ classFun(from) } )
colClasses =c("numeric", "character", "myDate", "numeric", "numeric", "myDate")
z<-read.csv.ffdf(file=pathCsv, colClasses=colClassesffdf)
これは機能せず、次のエラーが表示されます:-
ff のエラー (initdata = initdata、長さ = 長さ、レベル = レベル、順序付け = 順序付け、: vmode 'list' が実装されていません
RSQlite と ODBC の機能も知っていますが、使用したくありません。上記のエラーの解決策、またはこれを回避する他の方法はありますか?