2013-08-04 175 views
0

我有閱讀csv的大量問題,我可以根據要求提供(因爲我不知道如何在這裏上傳)。它有點.千位分隔符如前所述的問題。此外,我需要使用skipfooter=1,因爲我的文件末尾有一個空行。這使得decimal=","不工作,即使沒有點禮物...閱讀csv文件的問題

我的文件是這樣的:

Commerzbank AG Fakt.3xLongZ.09(09/unl.)CBK(WKN: CZ24PE B<F6>rse: LT Commerzbank) 

Datum;Zeit;Er<F6>ffnung;Hoch;Tief;Schluss;Volumen 
02.08.2013;14:00;0,033;0,033;0,023;0,028;0,00 
01.08.2013;14:00;0,023;0,029;0,022;0,028;0,00 
14.03.2013;13:00;0,125;0,125;0,094;0,105;0,00 
13.03.2013;13:00;0,165;0,165;0,105;0,125;0,00 

不要錯過在這裏沒有顯示最終的雙空行。這使得skipfooter的使用必不可少,否則日期不能正確識別。我最好的嘗試是:

s = pd.read_csv('test.csv', decimal=',',sep=';', 
       parse_dates={'Dates': [0, 1]}, 
       index_col=[0], skipfooter=1, skiprows=3) 

這讀取日期正確,但所有數字都無法識別。

問候。

+2

請提供樣本數據。你有什麼嘗試? –

+0

請示例代碼。你在使用'csv'模塊嗎? –

+0

這個答案對千位分隔符有幫助嗎? http://stackoverflow.com/questions/11763204/how-to-efficiently-handle-european-decimal-separators-using-the-pandas-read-csv –

回答

1

使用nrows而不是skipfooter。小數選項適用於它

df = pd.read_csv(fileName, index_col=[indexParam], 
          skiprows = rowsToSkip, 
          decimal = ',', nrows = rowsToRead)