1
我有困難的拼湊一些邏輯命令通過獨特的出現,使得第一記錄最常發生和去年一樣頻繁的至少一個numpy的記錄陣列。訂單記錄陣列
考慮四個記錄有一個重複:
import numpy as np
ar = np.array([('A', 1), ('B', 3), ('A', 2), ('B', 3)],
dtype=[('c1', '|S1'), ('c2', 'i')])
我理想的結果是這樣的:
[('B', 3) ('A', 1) ('A', 2)]
(對於SQL球迷:SELECT c1, c2 FROM ar GROUP BY c1, c2 ORDER BY count(*) DESC;
)
這是我嘗試使用np.unique
and np.bincount
:
uar, inv = np.unique(ar, return_inverse=True)
print uar # [('A', 1) ('A', 2) ('B', 3)]
print inv # [0 2 1 2]
print np.bincount(inv) # [1 1 2]
但是這是我在拼湊togher任何邏輯迷路根據從np.bincount
遞減計數排序uar
。
點上;與更復雜的現實世界的情況下完美地工作 –