14
非常奇怪的错误在这里:我使用熊猫合并几个数据帧。作为合并的一部分,我必须多次调用reset_index。但是当我这样做时,第二次或第三次使用reset_index会意外崩溃。熊猫崩溃重复DataFrame.reset_index()
下面是最少的代码重现错误:
import pandas
A = pandas.DataFrame({
'val' : ['aaaaa', 'acaca', 'ddddd', 'zzzzz'],
'extra' : range(10,14),
})
A = A.reset_index()
A = A.reset_index()
A = A.reset_index()
这里的追溯的相关部分:
....
A = A.reset_index()
File "/usr/local/lib/python2.7/dist-packages/pandas/core/frame.py", line 2393, in reset_index
new_obj.insert(0, name, _maybe_cast(self.index.values))
File "/usr/local/lib/python2.7/dist-packages/pandas/core/frame.py", line 1787, in insert
self._data.insert(loc, column, value)
File "/usr/local/lib/python2.7/dist-packages/pandas/core/internals.py", line 893, in insert
raise Exception('cannot insert %s, already exists' % item)
Exception: cannot insert level_0, already exists
任何想法是怎么回事错在这里?我如何解决它?
熊猫仅尝试reset_index后设定新的列(多个)的名称,如果原始帧的索引没有名称,或者如果多指标级别具有万一没有名字的MultiIndex。 A.index.name ='index1'; A = A.reset_index(); A.index.name =“index2”; A = A.reset_index(); A.index.name ='index3'; A = A.reset_index()...可以去一个 –