簡體   English   中英

跳過或忽略目錄中的空csv文件-R

[英]Skip or ignore empty csv files in directory - R

我在目錄中有一堆csv文件。 一些文件為空。 我可以使用以下代碼刪除空文件:

刪除目錄中的空csv文件-R

setwd('C:/Users/mmiller/Documents/simple R programs/')
my.folder <- paste0(getwd(), '/', 'empty_csv_files/')
setwd(my.folder)
my.delete.empty.csv = lapply(Filter(function(x) countLines(x)==0, list.files(pattern='.csv')), unlink)
my.model.files <- list.files(my.folder, pattern="^model.*?\\.csv")
my.model.list  <- lapply(paste0(my.folder, my.model.files), read.csv)
my.model.data  <- do.call(rbind, my.model.list)

但是,此代碼實際上從目錄中刪除了(即銷毀了)空的csv文件。 有沒有一種方法可以簡單地跳過或忽略空的csv文件,而不是銷毀它們? 我對銷毀文件感到有些不自在,因為這似乎消除了所有步驟的清晰記錄。 例如,我可能不容易確切知道有多少文件被銷毀。

這是我在此示例中使用的文件的內容( model3.csv為空):

model1.csv
var1
1
2
3

model2.csv
var1
10
20
30

model3.csv

model4.csv
var1
100
200
300

model5.csv
var1
1000
2000
3000

您可以使用file.size測試哪些文件的長度為零,然后跳過那些。

CSV_Files = dir(pattern="*.csv")
CSV_Files[file.size(CSV_Files) > 0]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM