私が言葉で何をしようとしているのかを説明するのは難しいので、ここに例を示します。
次の入力があるとしましょう。
In [76]: x
Out[76]:
0 a
1 a
2 c
3 a
4 b
In [77]: z
Out[77]: ['a', 'b', 'c', 'd', 'e']
私は手に入れたい:
In [78]: ii
Out[78]:
array([[1, 0, 0, 0, 0],
[1, 0, 0, 0, 0],
[0, 0, 1, 0, 0],
[1, 0, 0, 0, 0],
[0, 1, 0, 0, 0]])
ii
z
元のを取り戻すために適用できるブールマスクの配列ですx
。
z
私の現在の解決策は、に変換し、メソッドをlist
使用して要素のインデックスを取得し、1が存在するインデックスを除いてゼロの行を生成する関数を作成することです。この関数は、の各行に適用され、目的の結果を取得します。index
z
x