2017-07-28 7 views
-1

396個のcsvファイルを含むフォルダがあります。Rで複数のcsvファイルをインポートしますが、最初の25行をスキップし、それ以降の行数をスキップします

各csvファイルの最初の25行は同じなので、私はそれらをスキップします。次に、26行目は私が保持したいヘッダー行です。

問題は、興味のある情報がcsvファイル内の別の行から始まることです。行48で始まり、36,32 ...などで始まります。私のヘッダーの後に行をスキップしたい必要な情報の行の開始。最初の25行をスキップし、ヘッダー行(26番目)を保持し、Rが情報の開始行を見るまでヘッダーの後に行をスキップするように自動化する方法はありますか?

さらに、私が望む行に到達すると、値は他のすべての行または他の2行に表されます。一貫していないので、これを解決する方法はありますか?

例:

1. Name 
2.... 
. 
. 
25... 
26.Header 
27.... 
. 
. 
32/41/etc 12/04/2015 13:49 4  6 

私が使用してどのようなコードを確認していないが、私はこのコードを使用してのことを考え始めた:

files<-list.files("filepath",pattern="*csv", full.names=T) 
names(files)<-files 
headers = read.csv(files, skip = 1:25, header = F, as.is = T) 


edata <- do.call(rbind, lapply(files, read_csv)) 

私はで問題をスキップ処理する方法を確認していません。コール。

誰もが同様の問題に遭遇しましたが、どのように解決しましたか?

ありがとうございます。

+0

[mcve]を確認してください。 –

+0

詳しい説明が必要です。 'skip = 25'で最初の25行をスキップすることができます。次に、保持したい行にパターンがありますか?欠損値を破棄する行はありますか?ちょうどあなたのデータの実際の例をコピーしてください –

+0

私は同意します。 'skip = 25'を使って空の行を削除するだけです.... – pyll

答えて

0
# First skip the 25 lines 
data = read.csv(file, skip = 25, header = T) 

# Then remove all other empty rows 
data[rowSums(is.na(data)) != ncol(data),] 
関連する問題