Ho due diversi array numpy dati. Primo è matrice bidimensionale che assomiglia (primi dieci punti):Intersezione di due array numpy di dimensioni diverse per colonna
[[ 0. 0. ]
[ 12.54901961 18.03921569]
[ 13.7254902 17.64705882]
[ 14.11764706 17.25490196]
[ 14.90196078 17.25490196]
[ 14.50980392 17.64705882]
[ 14.11764706 17.64705882]
[ 14.50980392 17.25490196]
[ 17.64705882 18.03921569]
[ 21.17647059 34.11764706]]
la seconda matrice è solo unidimensionale che assomiglia (primi dieci punti):
[ 18.03921569 17.64705882 17.25490196 17.25490196 17.64705882
17.64705882 17.25490196 17.64705882 21.17647059 22.35294118]
valori dalle la seconda matrice (una dimensione) potrebbe verificarsi nella prima (bidimensionale) nella prima colonna. F.e. 17.64705882
Desidero ottenere un array da quello a due dimensioni in cui i valori della prima colonna corrispondono ai valori nella seconda matrice (una dimensione). Come farlo?
le consuete precauzioni con floating test di uguaglianza punto si applicano, per esempio '.1 + .1 + .1 == .3' restituisce' False', quindi a meno che i valori siano veramente uguali, non semplicemente equivalenti in aritmetica non in virgola mobile, le cose possono andare molto male. – Jaime
@Jaime ottimo commento. Sai se hanno in programma di aggiungere un parametro 'tolerance' a' np.in1d'? –
Potrebbe avere senso, e per 'in1d' sembra essere un problema ben definito. Non so se qualcuno ci sta lavorando, ma le richieste di pull sono sempre ben accette! ;-) – Jaime