我將一個文件夾中的所有文件逐個讀入DataFrame,然後檢查它們是否存在一些條件。有幾千個文件,我很想讓大熊貓在文件爲空的時候拋出異常,這樣我的閱讀器功能就會跳過這個文件。如何跳過用Python中的熊貓讀取空文件
我有類似:
class StructureReader(FileList):
def __init__(self, dirname, filename):
self.dirname=dirname
self.filename=str(self.dirname+"/"+filename)
def read(self):
self.data = pd.read_csv(self.filename, header=None, sep = ",")
if len(self.data)==0:
raise ValueError
class Run(object):
def __init__(self, dirname):
self.dirname=dirname
self.file__list=FileList(dirname)
self.result=Result()
def run(self):
for k in self.file__list.file_list[:]:
self.b=StructureReader(self.dirname, k)
try:
self.b.read()
self.b.find_interesting_bonds(self.result)
self.b.find_same_direction_chain(self.result)
except ValueError:
pass
我正在尋找一些條件
常規文件看起來像:
"A/C/24","A/G/14","WW_cis",,
"B/C/24","A/G/15","WW_cis",,
"C/C/24","A/F/11","WW_cis",,
"d/C/24","A/G/12","WW_cis",,
但不知何故,我從來沒有得到ValueError
提高了,而我的功能正在搜索空文件,這在我的結果文件中給了我很多「Empty DataFrame ...」行。我如何讓程序跳過空文件?
是不是這是一個騙局:http://stackoverflow.com/questions/2507808/python-how-to-check-file-empty-or-not – EdChum