[英]Python: Parsing multiple csv files and skip files without a keyword
我正在嘗試讀取python上的某些.csv字段數據以進行后處理,我通常只使用以下內容:
for flist in glob('*.csv'):
df = pd.read_csv(flist, delimiter = ',')
但是,我需要過濾掉文件中某處包含“ Run_Terminated”的錯誤文件,然后完全跳過該文件。 我還是python的新手,所以我不熟悉python的所有功能,任何輸入都會受到贊賞。 謝謝。
您可以做的是首先完全讀取內存中的文件(使用io.StringIO
文件的對象,並在文件中的任何位置查找Run_Terminated
字符串(臟,但應該可以),
然后將句柄傳遞給read_csv
(因為您可以傳遞句柄或文件名),因此您不必從文件中再次讀取它。
import pandas as pd
import glob
import io
for flist in glob('*.csv'):
with open(flist) as f:
data = io.StringIO()
data.write(f.read())
if "Run_Terminated" not in data.getvalue():
data.seek(0) # rewind or it won't read anything
df = pd.read_csv(data, delimiter = ',')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.