Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.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中如何计算具有初始值的列_Python_Pandas - Fatal编程技术网

在python中如何计算具有初始值的列

在python中如何计算具有初始值的列,python,pandas,Python,Pandas,我有一个数据帧(df),如下所示: Date rtns 10/1/2000 NaN 11/1/2000 0.015 12/1/2000 -0.007 我想添加一列“累计值”,从2000年1月10日的100.0000开始,然后在11日,100*(1+0.015)=101.5;在12号,101.5*(1-0.007),依此类推 我试过: #添加虚拟列,计算累积值: df['Accumulated Values']=100 acv=df['Accumulated Values'] a

我有一个数据帧(df),如下所示:

Date      rtns
10/1/2000  NaN
11/1/2000  0.015
12/1/2000  -0.007
我想添加一列“累计值”,从2000年1月10日的100.0000开始,然后在11日,100*(1+0.015)=101.5;在12号,101.5*(1-0.007),依此类推

我试过:

#添加虚拟列,计算累积值:

df['Accumulated Values']=100
acv=df['Accumulated Values']
acv[1:]=(df.rtns[1:]+1)*acv[1:].shift(1)
#添加列

df['Accumulated Values']=acv

问题是
acv[1::]。第一行的shift(1)
始终为NaN。

为什么不将第一行设置为100
df.iloc[0,1]=100
{df['cumulated Values']=100}已经涵盖了这一点-将第一行设置为100No,但您只需在RTN上操作……很抱歉,在操作acv之前错过了这一点:“acv=df['cumulated Values']”