迭代 Pandas DataFrame 中的行
迭代 Pandas DataFrame 中的行允许您访问各个行及其元素。为了实现这一点,Pandas 提供了两种常用的方法:DataFrame.iterrows 和 DataFrame.T.iteritems()。
DataFrame.iterrows:
DataFrame.iterrows 是一个生成器,生成行的索引和表示为 Pandas Series 的行本身。以下代码片段演示了其用法:
import pandas as pd df = pd.DataFrame({'c1': [10, 11, 12], 'c2': [100, 110, 120]}) for index, row in df.iterrows(): print(row['c1'], row['c2'])
这将输出:
10 100 11 110 12 120
DataFrame.T.iteritems():
DataFrame.T.iteritems() 迭代 DataFrame 的列。使用 .T 和 .iteritems() 转置 DataFrame 会生成列名和行作为 Series。请注意,这种方法通常比 iterrows 效率低:
for column_name, row in df.T.iteritems(): print(column_name, row['c1'], row['c2'])
这将输出:
c1 10 11 12 c2 100 110 120
性能注意事项:
迭代pandas 对象通常比矢量化操作或使用 apply() 方法的函数应用程序慢。如果性能至关重要,请考虑使用 cython 或 numba 来增强迭代操作的性能。
以上是如何有效地迭代 Pandas DataFrame 中的行?的详细内容。更多信息请关注PHP中文网其他相关文章!