NumPy 中的GroupBy 功能
對數據進行分組是數據分析中的一項常見任務,允許您根據特定條件聚合和組織數據。雖然 NumPy 本身並沒有提供專用的分組功能,但您可以採取多種方法來實現此功能。
一種方法是將 np.split() 函數與 np.unique() 結合使用。此方法依賴這樣的假設:用作分組鍵的陣列的第一列始終在增加。按此列對陣列進行排序並取得唯一值,您可以隨後使用 np.split() 將陣列拆分為群組。
例如,給定下列陣列:
array([[1, 275], [1, 441], [1, 494], [1, 593], [2, 679], [2, 533], [2, 686], [3, 559], [3, 219], [3, 455], [4, 605], [4, 468], [4, 692], [4, 613]])
要以第一列對此數組分組,可以使用以下程式碼:
a = a[a[:, 0].argsort()] np.split(a[:,1], np.unique(a[:, 0], return_index=True)[1][1:])
這將產生所需的輸出:
array([[[275, 441, 494, 593]], [[679, 533, 686]], [[559, 219, 455]], [[605, 468, 692, 613]]], dtype=object)
這種方法有幾個優點:
雖然 NumPy 本身可能沒有特定的分組功能,但上述方法提供了對資料執行分組操作的有效方法,使您能夠有效地組織和分析它。
以上是如果沒有專用函數,如何在 NumPy 中實作 GroupBy 功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!