Python 在循环内创建新列

Python 在循环内创建新列,python,pandas,Python,Pandas,我试图从该列中的第一个值获取dftemp['eps\u mean\u est']中值的百分比变化。我想对每只股票中的每个dftemp['per\u end\u date']都这样做。这是我试过的代码。这是一个数据帧 错误是 KeyError:'ticker' 。我做错了什么 dftemp.set_index(['ticker','per_end_date'], inplace=True) for stock in dftemp['ticker'][0:]: for qtrDate in

我试图从该列中的第一个值获取
dftemp['eps\u mean\u est']
中值的百分比变化。我想对每只股票中的每个
dftemp['per\u end\u date']
都这样做。这是我试过的代码。这是一个数据帧

错误是

KeyError:'ticker'

。我做错了什么

dftemp.set_index(['ticker','per_end_date'], inplace=True)

for stock in dftemp['ticker'][0:]:
    for qtrDate in dftemp['per_end_date'][0:]:
        dftemp['pctchg'] = (dftemp['eps_mean_est'] - dftemp['eps_mean_est'][0]) /dftemp['eps_mean_est'][0]

df['eps_mean_est'].pct_change()
?RafaelC,这不会从当前行到最后一行创建pct更改吗?我试图从第一行的每一行创建pct更改。@RafaelC原始帖子中包含的错误消息与计算百分比无关。因此,它不是重复。列
dftemp['ticker']
dftemp
中不存在,因为您已将其转换为索引。此处它是重复:。错误来自XY问题,不需要循环