2つの異なるnumpy配列を比較して3番目の配列を作成するにはどうすればよいですか?私はそれがしたい私はナンシー・アレイ減算
a = [1,2,3,4]
b = [1,2,3,4,5,6,7,8,9]
を持っていると言う私は、2つの配列を通過し、例えばまたはb
にない値だけで新しい配列「c」を出力するループを書きたいです印刷:
c = [5,6,7,8,9]
2つの異なるnumpy配列を比較して3番目の配列を作成するにはどうすればよいですか?私はそれがしたい私はナンシー・アレイ減算
a = [1,2,3,4]
b = [1,2,3,4,5,6,7,8,9]
を持っていると言う私は、2つの配列を通過し、例えばまたはb
にない値だけで新しい配列「c」を出力するループを書きたいです印刷:
c = [5,6,7,8,9]
Numpyで差異設定操作を使用することができます:numpy.setdiff1d
。 Numpy docsから :
>>> a = np.array([1, 2, 3, 2, 4, 1])
>>> b = np.array([3, 4, 5, 6])
>>> np.setdiff1d(a, b)
array([1, 2])
明示的に指摘する価値があるかもしれません(docsの例は、暗黙的に表示するほどうまく作られていますが)。 'setdiff1d'は配列の繰り返しについて気にしません。スタックオーバーフローへようこそ! –
ありがとうございました! – cryptofish
OPは、どのアレイを他方から引くべきかを指定します。 'a = np.array([1,2,3,2,4,1]) b = np.array([3、4、5、6]) すべてのユニークな値が必要です。 c = np.concatenate((np.setdiff1d(a、b)、np.setdiff1d(b、a))) ' – jack6e
C =リスト(セット(B).difference(セット(A))) – suvy
ものは*リストです*。実際に 'numpy.ndarray'sで作業していますか? –