2017-02-25 13 views
0

파이썬에서 팬더를 사용할 때 문제가 발생합니다.팬더는 index_col 함수로 빈 줄을 건너 뛰지 않습니다.

국가 열을 사용하여 데이터 프레임을 인덱싱해야합니다.

tvdf = pd.read_csv(infile, sep=',', header=2, skiprows=[3], nrows=40, index_col='Country', skip_blank_lines=True) 

:

0 Televison, Physicians, and Life Expectancy 
1 NaN, NaN, NaN, NaN, NaN, NaN 
2 country, life expectancy, people/TV, people/physician, female life expectancy, male life expectancy 
3 NaN, NaN, NaN, NaN, NaN, NaN (I need to skip this line) 
4 value, value, value, value, value, value, 
5 value, value, value, value, value, value, 
... 
... 

는이 같은 헤더와 첫 번째 실제 데이터 라인 사이의 빈 줄을 건너 뛰려고 :하지만 CSV 파일은 다음과 같습니다 열 행 후 빈 줄이있다 반환으로, 그것은 국가 색인으로 색인을 성공적으로 뒀다. 그러나, skiprows도 skip_blank_lines도 index_col 함수 내에서 작동하지 않습니다. 내 해석은 다음과 같습니다. 국가 열을 인덱스로 사용하면 첫 번째 인덱스 이름으로 빈 행 (NaN)을 인식합니다. 그리고 skiprows도 skip_blank_lines도 index_col 함수에서 유효하지 않습니다. 나는 index_col없이 시도했지만, skiprows 또는 skip_blank_lines 문없이 자동으로 값이없는 라인을 건너 뜁니다.

나는이 문제로 온라인 검색 중이며 관련 문제는 발견하지 않았습니다. 이 단계에서 어쩌면 내가 cvs 파일을 조작하고 수동으로 빈 줄을 삭제할 수 있습니까? 아니면 아무도 그걸 다루는 경험이 있습니까?

감사합니다.

답변

0

사용 skiprows=[0, 1, 3]

pd.read_clipboard(
    sep=',', skipinitialspace=True, skiprows=[0, 1, 3] 
) 

enter image description here