2017-05-09 102 views
0

下面的Python程序崩溃是我的代码当我计算比率

recession_begin='2008q3' 
recession_end ='2009q4' 
recession_bottom = '2009q2' 

university_towns = (returns a dataframe 517 * 2 columns with a multi index of State and Region name) 

housing_df = (returns a dataframe 10730* 67 columns with a multi index of state and region name and with data of year quarters) 

的程序死掉以下行:(运行内存不足)

housing_df['ratio'] = housing_df[recession_begin]/housing_df[recession_end] 

什么可能我是做错了什么?我需要计算一个显示衰退开始和经济衰退底部之间房价下跌或增长的比率。

+1

你要加载的数据集比你的内存大? – Raphael

+0

请同时添加程序崩溃时出现的错误 – iamkhush

+0

我重新启动了内核并且问题得到了解决。我相信服务器内存不足。感谢您的帮助 – user3016095

回答

0

如果您有多级别的列,这很可能是广播问题;没有一个实际的数据片断,我无法确定,但假设你的内存超过1GB,你可能试图用列名不匹配的另一个数据帧划分数据帧,该数据帧试图返回一个巨大的NaN数据框。

最简单的方法来检查:尝试运行housing_df[recession_begin].values/housing_df[recession_end].values

+0

感谢您的回应。上面的行返回一个浮点数组。 当我重新启动内核时,问题已解决。 – user3016095