2015-04-22 82 views
3

我得到一個NotImplementedError: file structure not yet supported,當我對這個file大熊貓文件結構不支持錯誤

import constants, pandas, pdb 
from datetime import datetime, timedelta 

df = pandas.read_csv('300113R1.DNC', skiprows = 11, delim_whitespace=True,usecols=['Y','M','D','PRCP'], 
        parse_dates={"datetime": [0,1,2]}, index_col="datetime", 
        date_parser=lambda x: pandas.datetime.strptime(x, '%Y %m %d')) 

上什麼可能會錯誤的任何想法,運行下面的代碼?在這同一數據集的較小的樣本相關查詢是在這裏: Date parse error in Python pandas while reading file

+1

你丟失了一些列標題,最後一個有效的標題是'SMES21',所以你既可以通過'頭= None'還是看如何生成此文件,並修復缺少的頭 – EdChum

+0

謝謝,我會很樂意接受這個答案。 – user308827

+0

我已經發布了一種方法,對我來說,它意味着重命名'3'列,但我也包括這也 – EdChum

回答

4

感謝@cosmoscalibur爲察覺,你的文件丟失列,一個解決方案是跳過解析頭:

df = pandas.read_csv('300113R1.DNC', skiprows = 12, delim_whitespace=True,usecols=[0,1,2,3], header=None 
        parse_dates={"datetime": [0,1,2]}, index_col="datetime", 
        date_parser=lambda x: pandas.datetime.strptime(x, '%Y %m %d')) 

這需要你到單個列從「3」重命名爲「PRCP」加載後:

df = df.rename(columns={3:'PRCP'}) 
1

NotImplementedError

是未實現的方法。該方法的名稱引用存在,但不包含方法內部的代碼。這非常有用,說未來這種方法將成爲圖書館的一部分。

+0

謝謝,我明白了,看起來這個文件應該是可讀的。 – user308827

+1

我同意OP,我不能看到任何特別特殊的文件,它應該是可讀的 – EdChum

+0

你使用什麼Panda版本? @ user308827 – cosmoscalibur