2012-11-08 111 views
1

我有一個空格分隔CSV文件:閱讀稀疏CSV文件導入熊貓

2012-11-01 1 2012-12-01 4 2013-02-01 6 
2012-12-01 2 2013-01-01 nan 
2012-11-01 3 2012-12-01 5 2013-01-01 5 2013-04-01 7 

基本上日期之後的值,但日期是稀疏。一些值是nan,或者也可能會丟失。我希望能夠讀入熊貓,並根據相應的日期排列值。

運行熊貓:

import pandas as pd 
pd.read_csv('sparse.csv', sep=" ", parse_dates=True) 

與錯誤:

ValueError: Expecting 6 columns, got 8 in row 1 

什麼是讀取這個文件,並對齊日期/值的方法嗎?

(有一些「預處理」我可能會做什麼?)

感謝

回答

2

CSV應包含的字段相同的數列。如果它只是成對的日期 - 數字之間沒有關係,它不是CSV,而只是成對的文件。所以,它應該被解析爲文件對:

input = open("sparse.csv").read().split() # split by newlines and spaces 
i = iter(input) 
for date in i: 
    if date != "nan": 
     value = i.next() 
     # process pairs 
+0

謝謝。我也在考慮類似的方法。 – gliptak