回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有两个数组,<code>a</code>和<code>b</code>,我想找到第一个<em>n</em>唯一(跨<code>a</code>和<code>b</code>)项的索引。最好用一个例子来解释:</p>
<pre><code># 0 1 2 3 4 5 6 7 8 9 10 11 12
a = np.asarray([1, 1, 2, 2, 3, 3, 3, 4, 5, 5, 6, 6, 6])
b = np.asarray([0, 0, 1, 0, 0, 2, 0, 0, 0, 0, 1, 1, 1])
</code></pre>
<p>对于n=1,我希望结果是<code>[0, 2, 3, 4, 5, 7, 8, 10]</code>(列表不包含index=1,因为它已经由index=0(<code>(a[0], b[0]) == (a[1], b[1])</code>)给出),而不是index=6,因为它已经由index=4在结果列表中给出,index=9不包括在内,因为index=8是等效的)。你知道吗</p>
<p>对于n=2,结果应该是<code>[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]</code>(结果中允许在<code>a</code>和<code>b</code>上出现2个唯一的匹配项)。你知道吗</p>
<p>我不知道如何用numpy来表达。。。感谢您的帮助。你知道吗</p>