Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用同一表中的数据填充pandas表的有效方法_Python_Python 3.x_Pandas_Dataframe - Fatal编程技术网

Python 使用同一表中的数据填充pandas表的有效方法

Python 使用同一表中的数据填充pandas表的有效方法,python,python-3.x,pandas,dataframe,Python,Python 3.x,Pandas,Dataframe,请看下表,我会尽力解释那里发生了什么 A AVG(A) COEF A PREDICTION 1 7.711311e+06 NaN NaN NaN 2 7.954800e+06 NaN NaN NaN 3 7.936405e+06 NaN

请看下表,我会尽力解释那里发生了什么

         A               AVG(A)           COEF       A PREDICTION

1   7.711311e+06           NaN             NaN           NaN
2   7.954800e+06           NaN             NaN           NaN
3   7.936405e+06           NaN             NaN           NaN
4   7.943156e+06           NaN             NaN           NaN
5   8.058328e+06           NaN             NaN           NaN
6   8.262795e+06           NaN             NaN           NaN
7   8.571035e+06           NaN             NaN           NaN
8   8.594560e+06           NaN             NaN           NaN
9   8.633982e+06           NaN             NaN           NaN
10  8.449065e+06           NaN             NaN           NaN
11  8.471940e+06           NaN             NaN           NaN
12  8.498411e+06           NaN             NaN           NaN
13  8.938666e+06           NaN             NaN           NaN
14  9.118592e+06           NaN             NaN           NaN
15  9.148847e+06           NaN             NaN           NaN
16  8.894800e+06           NaN             NaN           NaN
17  8.981288e+06  8.480469e+06        1.020306           NaN
18  9.054566e+06  8.559484e+06        1.021430           NaN
19  9.126747e+06  8.628422e+06        1.016544           NaN
20  9.209076e+06  8.703285e+06        0.959278           NaN
21  9.229077e+06  8.778928e+06        0.977292           NaN
22  9.103907e+06  8.840432e+06        0.988755  9.019947e+06
  • a) 列
    a
    ,我们有兴趣预测下一个a
  • (b)
    AVG(A)
    是A的滚动平均值(窗口=17)
  • c)
    COEF
    列为 预先计算并帮助我们预测
  • d)
    预测
    列的计算如下:
df['A PREDICTION']=df['AVG(A)]*df['COEF'].shift(5)

我知道我的
A PREDICTION
列非常精确,所以我想继续我的表,再增加5行(因为我还有5个系数)。为了做到这一点,我需要继续
A
列,但是我没有更多的数据,所以我将使用我的预测。即,下一行应按如下方式开始:

         A               AVG(A)           COEF       A PREDICTION

1   7.711311e+06           NaN             NaN           NaN
2   7.954800e+06           NaN             NaN           NaN
3   7.936405e+06           NaN             NaN           NaN
4   7.943156e+06           NaN             NaN           NaN
5   8.058328e+06           NaN             NaN           NaN
6   8.262795e+06           NaN             NaN           NaN
7   8.571035e+06           NaN             NaN           NaN
8   8.594560e+06           NaN             NaN           NaN
9   8.633982e+06           NaN             NaN           NaN
10  8.449065e+06           NaN             NaN           NaN
11  8.471940e+06           NaN             NaN           NaN
12  8.498411e+06           NaN             NaN           NaN
13  8.938666e+06           NaN             NaN           NaN
14  9.118592e+06           NaN             NaN           NaN
15  9.148847e+06           NaN             NaN           NaN
16  8.894800e+06           NaN             NaN           NaN
17  8.981288e+06  8.480469e+06        1.020306           NaN
18  9.054566e+06  8.559484e+06        1.021430           NaN
19  9.126747e+06  8.628422e+06        1.016544           NaN
20  9.209076e+06  8.703285e+06        0.959278           NaN
21  9.229077e+06  8.778928e+06        0.977292           NaN
22  9.103907e+06  8.840432e+06        0.988755  9.019947e+06
23  9.019947e+06                                
之后,我将计算
AVG(A)
并将其乘以
1.021430
得到第23行的
A预测
,然后在第24行使用该
A预测
后,计算下一个
AVG(A)
并将其乘以
1.016544
,得到下一个
A预测


有没有一种有效的方法来做这样的事情?

那么您需要for loop:-)我如何在df中使用它?