使用先前索引进行for循环计算的问题

时间:2018-10-18 09:35:17

标签: python pandas for-loop dataframe

我有一个看起来与此相似的数据框: df

   Year   GDP
   2010   6.100
   2011   7.572
   2012   8.560

我正在尝试计算

`growth_percent = (current_GDP - previous_GDP)/(previous_GDP`)

growth_increase = current_GDP - past_GDP

我一直在尝试使用for循环来解决此问题,但是我不确定在这种情况下如何或是否能够对过去的值使用过去的索引。

2 个答案:

答案 0 :(得分:0)

如果您共享您的代码会很有帮助,但是下面的代码应该可以帮助您:

[i]

输出

def main():
    GDP = [6.100,7.572,8.560]

    GROWTH_VEC = []
    for i in range(0,len(GDP) - 1):
        GROWTH_VEC.append( (GDP[i+1] -GDP[i])/GDP[i] ) 
    print(GROWTH_VEC)    



main()  

如果您的数据位于csv或文本文件中,则可以使用[0.24131147540983613, 0.13048071843634448] 进行读取,也可以将其读取到csv.reader数据框中

答案 1 :(得分:0)

这将有助于:

x['GDP'].rolling(window=2).apply(lambda x: x[1] / x[0])