Как сравнить элементы в двух numy-массивах и добавить другой элемент? - PullRequest
0 голосов
/ 22 апреля 2019

У меня есть два массива с разными длинами (~ 25k), выглядят так:

a = [['0110000TPK019906K' '325096'] ['0110000TPK01PR12' '225091']...]

b = [['0110000TPK019906K' '4']['0110000TPK01TGTX12K' '5']...]

Мне нужно найти все похожие элементы a [i] [0] и b [i] [0] и добавить b [i] [1] в массив a. Результат должен быть как:

a = [['0110000TPK019906K' '325096' '4']

Итак, я написал этот код, и у меня возник вопрос?

i = 0    
while ( ): # which condition I should use?
        if a[0][i] == b[0][i]:
                quantity = b[0][1]
                np.append(a[0], b[i][1])
        else:
            # how go to next element in array b?

Или, может быть, более эффективный способ существует?

1 Ответ

1 голос
/ 22 апреля 2019

Вы можете использовать list-comprehension.

new_array = np.array([[i[0],i[1],j[1]] for i,j in zip(a,b) if i[0]==j[0]])

print(new_array)

Выход:

[['0110000TPK019906K' '325096' '4']]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...