在 Pandas 中的数据帧中迭代行:使用 df.index 和 df.iterrows() 作为迭代器之间有区别吗?

Fra*_*zzo 2 python dataframe pandas

在 Pandas 中迭代数据帧中的行时,使用以下方法在性能上是否存在差异:

for index in df.index:
    ....
Run Code Online (Sandbox Code Playgroud)

和:

for index, row in df.iterrows():
    ....
Run Code Online (Sandbox Code Playgroud)

?应该优先选择哪一个?

Nic*_*sen 6

Pandas 对于按列操作要快得多,因此请考虑转置数据集并执行您想要的任何操作。如果您绝对需要遍历行并希望保持简单,您可以使用

for row in df.itertuples():
    print(row.column_1)
Run Code Online (Sandbox Code Playgroud)

df.itertuplesdf.iterrows()比索引迭代要快得多。然而,有更快的方法来执行行操作。查看答案以获取概述。