*更新 - 添加此代码以显示什么是pivYears
pivYears = []
for i in range(1990,2011):
year = str(i)
varAdd = 'XXX_'+year
pivYears.append(varAdd)
所以我在下面有两行代码。
使用Python 2.7.5和Pandas 0.12.0成功运行的
dfp = pd.pivot_table(df, values=pivYears, rows=['partid'],cols=['finestflag_OV'], aggfunc=np.sum)
这个用Python 2.7.6和Pandas 0.13.1无法成功运行。我收到错误,指的是
malloc: *** mach_vm_map …. error code = 3
这是代码:
dfp = pd.pivot_table(df, values=pivYears, index=['partid'],columns=['finestflag_OV'], aggfunc=np.sum)
可能是我误解了pivot与pivot_table和/或它在0.13.1中的工作原理。
最后,由于我已经使用0.12.0一段时间并且对此感到满意,是否可以在我的新机器上从0.13.1降级到0.12.0? (另外,我可以回到Python版本,所以我的所有机器都有相同版本的Python和Pandas吗?)
编辑问题: 两个操作系统都是OS X 10.9.2。
这是CSV中9行数据的子集。 https://github.com/nygeog/python/blob/master/pandas/pivot_sample.csv
实际文件有大约170万行。在0.12.0的机器上工作正常。
谢谢, 丹尼
所以我使用了Enthought Canopy 1.4.0(64位)并且它可以处理这些数据,但它确实会产生以下错误信息:
(1564174, 79)/Users/danielmsheehan/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/pandas/io/parsers.py:1070: DtypeWarning: Columns (38,41,43,52,66,67) have mixed types. Specify dtype option on import or set low_memory=False.
data = self._reader.read(nrows)
/Users/danielmsheehan/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/pandas/io/parsers.py:1070: DtypeWarning: Columns (43,66,67) have mixed types. Specify dtype option on import or set low_memory=False.
data = self._reader.read(nrows)
在我的另一台机器上,这一切在Pandas 0.12.0中仍能正常工作。但我无法弄清楚为什么它在Enthought中工作,而不是通过Sublime文本2在我的机器上工作。