2017-02-25 47 views
0

我在python中使用熊貓時遇到問題。熊貓不會跳過帶有index_col函數的空行

我需要使用國家/地區列索引我的數據幀。但列一行之後的空行該CSV文件看起來像這樣:

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, 
... 
... 

我試圖跳過這樣的標題和第一實際數據線之間的空行:

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

作爲回報,它成功地把國家列作爲索引。但是,在index_col函數內,skiplines和skip_blank_lines都不起作用。我的解釋是:如果我使用country列作爲索引,它會將空行(NaN)識別爲第一個索引名稱。並且skip_range和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