我试图更改列或处理列,但遇到一些keyError错误。从事芝加哥犯罪数据分析。 例如,当我尝试运行此行
ds [“发生日期”] = pd.to_datetime([ds [“发生日期”]],format =“%m /%d /%Y%I:%M:%S% p“)
KeyError跟踪(最近一次通话最近) get_loc中的/usr/local/lib/python3.6/dist-packages/pandas/core/indexes/base.py(自身,键,方法,公差)
这是完整的代码:
#print(header)
>>> foo 5
#print(len(header))
>>> 10
这是错误:
2896尝试: -> 2897返回self._engine.get_loc(key)2898,除了KeyError:
pandas._libs.index.IndexEngine.get_loc()中的pandas / _libs / index.pyx
pandas._libs.index.IndexEngine.get_loc()中的pandas / _libs / index.pyx
pandas / _libs / hashtable_class_helper.pxi在 pandas._libs.hashtable.PyObjectHashTable.get_item()
pandas / _libs / hashtable_class_helper.pxi在 pandas._libs.hashtable.PyObjectHashTable.get_item()
KeyError:“发生日期”
在处理上述异常期间,发生了另一个异常:
KeyError跟踪(最近的呼叫 最后)2帧 /usr/local/lib/python3.6/dist-packages/pandas/core/indexes/base.py在 get_loc(self,key,method,tolerance)2897返回 self._engine.get_loc(key)2898,除了KeyError: -> 2899返回self._engine.get_loc(self._maybe_cast_indexer(key))2900
pandas._libs.index.IndexEngine.get_loc()中的
索引器= self.get_indexer([键],方法=方法,公差=公差) 2901如果indexer.ndim> 1或indexer.size> 1:pandas / _libs / index.pyx
pandas._libs.index.IndexEngine.get_loc()中的pandas / _libs / index.pyx
pandas / _libs / hashtable_class_helper.pxi在 pandas._libs.hashtable.PyObjectHashTable.get_item()
pandas / _libs / hashtable_class_helper.pxi在 pandas._libs.hashtable.PyObjectHashTable.get_item()
KeyError:“发生日期”
答案 0 :(得分:0)
您的列已重命名,因此需要Crime_Date
并为[]
仅选择一列Series
:
ds["Crime_Date"] = pd.to_datetime(ds["Crime_Date"], format="%m/%d/%Y %I:%M:%S %p")
编辑:
列名中有一些空格,因此需要:
ds["DATE OF OCCURRENCE"] = pd.to_datetime(ds["DATE OF OCCURRENCE"], format="%m/%d/%Y %I:%M:%S %p")