【发布时间】:2018-02-08 23:17:08
【问题描述】:
_LIST=[]
J=1
for i,r in df.iterrows():
_VAR=r["A"]
if (_VAR==_LIST[J-1]):
我只想将 _VAR 值与我在上次迭代中获得的列表中的值进行比较。 但在这条线上出现错误, “列表索引超出范围”
这里的“A”是数据框 df 中的一列。
【问题讨论】:
-
您尚未使用任何元素初始化列表并尝试获取元素。这就是为什么,“列表索引超出范围”。更清楚你想要什么
-
但如果我在 _list=[] 之后给出 _LIST[0]='' 我只会在该行出现错误
-
@gsamaras 当然。但我相信 OP 错过了他初始化列表的代码。否则很容易看出为什么会出现索引不足错误。这就是为什么我要求他说得更清楚。
-
这段代码看起来很糟糕。为什么要这样命名变量?你到底想做什么?你应该只使用
_Var.isin(_LIST)。 -
您的代码存在多个问题。 1)您的列表为空 2)您已初始化“J”,然后尝试使用“j-1” 3)您的命名约定不符合 PEP-8 甚至普遍接受的标准
标签: python list pandas for-loop if-statement