【发布时间】:2020-08-21 19:09:53
【问题描述】:
我试图找出 GDP 连续两个季度下降的情况,以找出衰退的开始。数据框如下:
Quarter GDP(2009 Unchained)
2000q1 20
2000q2 19
2000q3 18
2000q4 17
2001q1 16
2001q2 17
2001q3 18
2001q4 19
我写了以下代码:
def start()
GDP.columns = ['Quarter', 'GDP (2009 chained)']
GDP = GDP.set_index('Quarter')
#GDP['Quarterly Change'] = GDP['GDP (2009 chained)'].diff()
for index in GDP.index:
first_q = GDP.loc[index, 'GDP (2009 chained)']
second_q = GDP.loc[index+1, 'GDP (2009 chained)']
third_q = GDP.loc[index+2, 'GDP (2009 chained)']
if (second_q < first_q) and (third_q < second_q): start = first_q
return start
但我收到此错误:
---> 16 second_q = GDP.loc[index+1, 'GDP (2009 chained)']
17 third_q = GDP.loc[index+2, 'GDP (2009 chained)']
18 if (second_q < first_q) and (third_q < second_q): start = first_q
TypeError: must be str, not int
大概是因为您不能对索引 +1,因为索引是字符串标签而不是整数 - 我该如何更正我的代码?
【问题讨论】: