2017-02-09 1 views
4

Python 2.7 및 Pandas 사용csv가 비어있는 경우 read_csv하는 방법

나는 내 디렉토리를 통해 구문 분석하고 여러 CSV를 그려야합니다.

pandas.io.common.EmptyDataError: No columns to parse from file 

내 파일 경로가

file_paths=[] 

에 저장 나는 경우 내가 하나 하나를 읽어 만 비어 있지 않은 음모 않는 방법 : CSV가 비어있는 경우, 스크립트 나누기 및 오류 메시지를 생성 CSV? 내가 DF로 정의 빈 dataframe = [] 나는, 당신은 당신 오류 반환 파일을 건너 뛸 내장 tryexcept 구문에 사용할 수 있습니다

for i in range(0,len(file_paths)): 
    if pd.read_csv(file_paths[i] == ""): 
     print "empty" 
    else df.append(pd.read_csv(file_paths[i],header=None)) 

답변

0

다음 코드를 시도하는 경우 다음과 같이

여기에 설명이 각 파일을 읽으려고 시도하고, 실패하면하면 다음 파일로 계속 Try/Except in Python: How do you properly ignore Exceptions?

for i in range(0,len(file_paths)): 
    try: 
     pd.read_csv(file_paths[i]) 
     ### Do Some Stuff 
    except: 
     continue 
     # or pass 

.

+1

감사합니다 !!!!! 이것은 완벽하게 작동합니다. –

+0

당신은 환영합니다 : 나는 당신의 문제를 해결했기 때문에 기쁘게 생각합니다. 적절한 기준의 보급을 위해 @Boud는 옳았습니다. 그의 답변은 덜 일반적입니다. – Chuck

+0

나는 예외를 제외하고는 그런 광범위한 것이 @Boud의 대답이 더 적합하다고 생각합니다. – kuanb

4
난 그냥 적절한 예외를 잡을 것

가, 캐치 모든이 파이썬에서 사용하지 않는 것이 좋습니다 :

import pandas.io.common 

for i in range(0,len(file_paths)): 
    try: 
     pd.read_csv(file_paths[i]) 
    except pandas.io.common.EmptyDataError: 
     print file_paths[i], " is empty"