我有一个数据帧,它包含2865044个条目和一个3级多重索引
MultiIndex.levels.names = ['year', 'country', 'productcode']
我试图重塑数据帧以生成宽数据帧,但我收到错误:
^{pr2}$我用过:
data[data.duplicated()]
但似乎不包含任何重复的数据行。在
这导致我使用to_csv()导出数据帧,并在Stata中打开数据,并使用duplicates list命令查找不包含重复项的数据集(根据Stata)。在
排序的csv文件中的一个示例:
year country productcode duplicate
1962 MYS 711 FALSE
1962 MYS 712 TRUE
1962 MYS 721 FALSE
我知道这是一个很长的机会,但是你知道是什么原因造成的吗?每个索引列中的数据类型为['year':int;'country':str,'productcode':str]。熊猫是如何定义独特的群体的吗?有没有更好的方法来列出那些有问题的索引行?在
更新: 我试过重置索引
temp = data.reset_index()
dup = temp[temp.duplicated(cols=['year', 'country', 'productcode'])]
我得到了完全不同的清单!在
year country productcode
1994 HKG 9710
1994 USA 9710
1995 HKG 9710
1995 USA 9710
更新日期:2013年6月28日:
在我的IPython会话中,这似乎是一个奇怪的内存问题。 今天早上的新实例,似乎可以很好地工作,并且在没有对昨天的代码进行任何调整的情况下重塑数据!如果问题再次出现,我将进一步调试并通知您。有人知道IPython会话的好调试器吗?在
也许可以试试
我认为索引中应该有一个
duplicated
方法,现在还没有https://github.com/pydata/pandas/issues/4060
相关问题 更多 >
编程相关推荐