Pandas 中以範圍連接/合併的最佳方式
在資料分析中,通常需要基於以下條件來連接或合併資料框特定範圍條件。一種方法是使用帶有虛擬列的交叉連接,但這可能效率低且複雜。更優雅、更有效率的解決方案是利用 numpy 廣播。
numpy 廣播
Numpy 廣播允許我們在不同形狀的陣列之間執行逐元素操作。這可以用來確定資料框中的哪些值滿足指定的範圍條件。
設定
考慮兩個資料框:A 有列 A_id 和 A_value,B 具有列 A_id 和 A_value列 B_id、B_low 和 B_high。我們想要連結 A 和 B,使得 A_value 介於 B_low 和 B_high 之間。
實作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
此方法利用逐元素比較和廣播來有效識別並將 A 和 B 中滿足範圍條件的行連接起來。它既優雅又高效,避免了循環或虛擬列的需要。
以上是如何在 Pandas 中根據範圍條件高效地連接 DataFrame?的詳細內容。更多資訊請關注PHP中文網其他相關文章!