約10,000個のカラムを持つcsvファイルをインポートしたいと考えています。私はfread
と同様にread.csv
を試しましたが、どちらの機能も機能していないようです。大きなテーブルで非ナル・カラム数が少ないファイルのインポート
問題は、左上(ファイル番号)の乱数を除いて、最初の列が完全に空であることです。ファイル名の後の最初の行には、右端に続く列名があります。ここでは、3つのカラムにNAsと整数の両方が含まれているとします。残りの9,997の列はすべて空です(つまり、列名は存在しますが、下位の値は含まれません)。
私はこれらのカラムにNAsを記入したいと思いますが、同時にこれら3つの完全に満たされたカラムをそのままにしておきます。これは可能ではないようですか?データの読み込みは、最後の行まで続く3列の列があっても、最初の行の後のすべての行を強制終了します(行100としましょう)。したがって、ファイル全体が行100までインポートされることを期待します。
私は間違っていますか?
残念ながら私はこの問題のサンプルファイルがありませんが、できるだけ明確に記述しようとしました。
編集:CSVによる輸入のためのコード:
read.csv(csvfile, sep = ";", na.strings=c("NA","..",""," "), stringsAsFactors = F,
header = T, as.is = T, dec = ".",fill = TRUE,quote="")
のfreadのためのコード:
fread(csvfile, sep = ";", na.strings=c("NA","..",""," "), stringsAsFactors = F,
header = T)
私は問題も等しくない列の長さとして記述することができると信じています。
他のツールを使用してこのファイルを最初にスクラブすることをおすすめします。メモ帳++を開くことができれば、それはJavaのようなものです。 'read.csv'が処理できる形式にします。 –
@TimBiegeleisen okしかし実際の問題は何ですか?不足している行の名前ですか?私は、最大の行の長さが最長の列の最大サイズを計算し、残りの部分をNAsでいっぱいにするのは簡単でしょうか? 編集:また、私はその形式でさらにいくつかのファイルを持っていて、私は可能な限り自動化された解決策を探しています。 – user3032689
最初の行はヘッダーを持つことも、最初の行をデータにすることもできます。これは 'read.csv'があなたを連れて行く限りです。 –