最佳化 Pandas 中的 DataFrame 迭代
按順序迭代資料幀以執行複雜分析是金融資料處理中的常見任務。雖然使用 enumerate() 和 df.values 提供的程式碼提供了一種簡單的方法,但它引發了關於其效率的問題。
為了解決這個問題,pandas 提供了專門的解決方案。 iterrows() 函數允許直接迭代資料幀行,傳回索引元組和對應的行值。此方法:
for index, row in df.iterrows(): # perform analysis based on index and row values
為了提高效能,itertuples() 函數提供了 iterrows() 的記憶體高效替代方案。
另外,一個高效的方法是直接利用 numpy 函數在資料幀列上,完全避免行迭代。 numpy 運算元用於整個列,從而實現更快的向量化計算。例如,要計算平均開盤價:
import numpy as np mean_open = np.mean(df['Open'])
以上是如何最佳化 Pandas 中的 DataFrame 迭代?的詳細內容。更多資訊請關注PHP中文網其他相關文章!