首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >计算季度的衰退和恢复

计算季度的衰退和恢复
EN

Stack Overflow用户
提问于 2017-01-25 18:58:34
回答 1查看 518关注 0票数 1

给定此数据帧

代码语言:javascript
代码运行次数:0
运行
复制
   GDP quarter
0  250  2015q1
1  260  2015q1
2  250  2015q3
3  240  2015q4
4  250  2016q1
5  260  2016q2

我如何才能计算出哪些季度是衰退,哪些季度是复苏?

衰退是指国内生产总值连续两个季度下降

复苏是指GDP在下降,但现在在上升。

EN

回答 1

Stack Overflow用户

发布于 2017-01-25 20:58:21

这里需要使用Series.shift函数

由于您的数据不易复制,因此我将只创建我自己的示例数据。

代码语言:javascript
代码运行次数:0
运行
复制
df = pd.DataFrame({"quarter":["2015q1", "2015q1", "2015q3", "2015q4", "2016q1", "2016q2"], "GDP": [250, 260, 250, 240, 250, 260]}
df['Last_GDP'] = df.GDP.shift(1)
df['Increase'] = df.GDP > df.Last_GDP
df['Last_Increase'] = df.Increase.shift(1)
df.ix[(~df.Last_Increase.fillna(False) & ~df.Increase), 'Re-x'] = "Recession"
df.ix[(~df.Last_Increase.fillna(False) & df.Increase), 'Re-x'] = "Recovery"
df.ix[df.Last_Increase.isnull(), 'Re-x'] = "Unknown"

   GDP quarter  Last_GDP Increase Last_Increase       Re-x
0  250  2015q1       NaN    False           NaN    Unknown
1  260  2015q1     250.0     True         False   Recovery
2  250  2015q3     260.0    False          True        NaN
3  240  2015q4     250.0    False         False  Recession
4  250  2016q1     240.0     True         False   Recovery
5  260  2016q2     250.0     True          True        NaN
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41849806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档