2
矩陣的名單上有以下形式的NumPy的矩陣:分區組在Python和NumPy的
dummy = np.array([['A', 1, 1],
['A', 1, 1],
['B', 1, 1],
['C', 1, 1],
['F', 1, 1],
['I', 1, 1],
['I', 1, 1],
['I', 1, 1],
['J', 1, 1],
['K', 1, 1],
['L', 1, 1],
['M', 1, 1]])
什麼,我試圖產生是NumPy的矩陣的一個列表,其中只能有ñ每矩陣字符串值的不同變化,例如:
具有ñ = 4:
[array([['A', '1', '1'],
['A', '1', '1'],
['B', '1', '1'],
['C', '1', '1'],
['F', '1', '1']], <= 4 different groups (A,B,C,F)
dtype='|S1'),
array([['I', '1', '1'],
['I', '1', '1'],
['I', '1', '1'],
['J', '1', '1'],
['K', '1', '1'],
['L', '1', '1']], <= 4 different groups (I,J,K,L)
dtype='|S1'),
array([['M', '1', '1']], <= only one but kept
dtype='|S1')]
我有以下功能幾乎工程..
def partition_by(x, groups):
uniques = set([])
p = []
q = []
for i in x:
if len(uniques) < groups or i[0] in uniques:
uniques.add(i[0])
p.append(i.tolist())
q.append(np.array(p))
return q
partition_by(dummy, 4)
產量:
[array([['A', '1', '1'],
['A', '1', '1'],
['B', '1', '1'],
['C', '1', '1'],
['F', '1', '1']],
dtype='|S1')]
那真棒..謝謝先生..功能可以適應於哪裏字符串不在索引0處,例如[[1,'A',1],[1,'A',1],[1,'B',1],...]]在索引1處。我如何通過索引作爲參數? – adebesin
@adebesin編輯。使用'colID'輸入參數:'colID = 1'。 – Divakar