迭代 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中文網其他相關文章!