0

当我使用此代码时,它打印一切正常,然后给我一个错误: KeyError:14425L 代码:

i = 0
while (i <= len(data)):
    print data.ix[i]['Params']
    i += 1

顺便提一句:

data.keys()
Out[67]: Index([u'Email Address', u'Hashed Email', u'Timestamp', u'Session Index', u'Event', u'Description', u'Version', u'Platform', u'Device', u'Params'], dtype=object)
4

2 回答 2

3

Python 列表索引基于 0,因此len(data)不是有效索引。

利用

while (i < len(data)):

反而。

但是,看起来您正在循环遍历 Pandas 数据框。您可能希望通过 pandas 数据帧逐行查看迭代,以及 使用 pandas 循环遍历数据帧的最有效方法是什么?

于 2013-08-03T12:42:13.413 回答
2

您正在访问最后一个索引之后的索引。列表的最大索引是len(data) - 1

while (i <= len(data)):

应该:

while (i < len(data)):
于 2013-08-03T12:42:05.380 回答