Pandas:New_Column=Column_A Column_B,New_Column中的值是New_Column的第一个单元格的值。需要修理

2024-06-28 11:35:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我遇到了一个让我困惑的减法问题。 我正试着用一列和另一列做减法。我使用的数据是arch_模型和ARIMAresult的残差

Data as follows

问题就在这里。当我执行pandas减法时,我的整个列被更改为一个值(第一行的值),而不是执行它应该执行的操作

residuals.fitted_garch = residuals.arma_resid - residuals.garch_resid

output

            arma_resid  garch_resid  fitted_garch
Gmt time                                         
2010-01-02    0.000012    -0.000004      0.000016
2010-01-03   -0.004926    -0.004943      0.000016
2010-01-04   -0.000392    -0.000408      0.000016
2010-01-05   -0.001888    -0.001905      0.000016
2010-01-06    0.002209     0.002193      0.000016
...                ...          ...           ...
2019-12-27   -0.000043    -0.000059      0.000016
2019-12-28    0.000007    -0.000009      0.000016
2019-12-29   -0.002366    -0.002382      0.000016
2019-12-30   -0.003173    -0.003189      0.000016
2019-12-31   -0.000101    -0.000117      0.000016

Both residuals are pandas series

如果您能解释发生了什么并提供修复建议,我们将不胜感激

Follow up - Code, dataframe, and result

从上面的屏幕截图中,我们可以看到列中所有行的结果是第一行单元格的值


Tags: 数据模型pandasoutputdataasarchfitted
1条回答
网友
1楼 · 发布于 2024-06-28 11:35:46

看看你发布的图片,我认为问题可能来自对数据的迭代。通常,当从一列中减去另一列时,您可以一次减去整个列,pandas将知道您正在执行向量减法

residuals['fitted_garch'] = residuals['arma_resid'] - residuals['garch_resid']

在这里,您也不需要使用np.nan初始化列,只需在适当的位置创建新的“garch_resid”列

相关问题 更多 >