在使用For循环,然后试图通过Python Series中的名称来访问列后,我得到了一个Key Error Message。

问题描述 投票:0回答:1

我希望有人能在这里帮助我。我是Python的新手,我被For Loop卡住了,要为我的datetime Series创建几个时间变化。一旦我遍历这些变化,并想通过名称访问列来计算百分比变化,我得到一个键错误。

下面是我的代码的样子。

i=1
x=50
for i in range (x):
    df_data_1['visits_lag_',i] = df_data_1['visits'].shift(i)

输出结果如下:df. dtypes

现在,如果我想计算或访问新创建的其中一个列,我收到了一个关键错误信息。

 df_data_1['percent_change_test'] = 
(df_data_1['visits']/df_data_1['(visits_lag_, 1)'])*100

它说:

Key Error

谁能帮帮我,我到底做错了什么?

python-3.x pandas time-series keyerror
1个回答
0
投票

我认为问题在于你如何调用新创建的列,而不是。

df_data_1["(visits_lag_, 1)"]

试着做:

df_data_1[("visits_lag_", 1)]
© www.soinside.com 2019 - 2024. All rights reserved.