【发布时间】:2021-08-14 20:35:03
【问题描述】:
我正在现有 df 中创建一个新列,其中前一列的值位于 i+1 位置。这意味着新列的最后一个值将保持为空。
代码在正确创建新df的意义上工作,但它给出了关键错误。我知道循环没有检测到如何停止。似乎有一个非常简单的解决方案,但到目前为止我还无法修复它。 这是代码。
data = [['scn1', 100, ''], ['scn1', 150, ''], ['scn1', 300, '']]
OCS = pd.DataFrame(data, columns = ['scn', 'FROM', 'TO'])
for i in OCS.index:
a = i
i = i+1
lastvld = OCS.loc[i].FROM
maxloop = len(OCS)
if a <= maxloop:
OCS.loc[a, 'TO'] = lastvld
任何帮助都会非常感激。
【问题讨论】:
标签: python pandas dataframe for-loop keyerror