Сравните конкретный элемент массива, используя numpy.where - PullRequest
0 голосов
/ 27 февраля 2019

Я пытался как-то сравнить конкретный элемент массива, используя numpy.where.У меня есть панды Dataframe следующим образом:

   Id   City                    UF
0   1   [5057, Itu, 26]         [26, São Paulo]
1   2   [5366, Sorocaba, 26]    None
2   3   [5347, São Paulo, 26]   [26, São Paulo]
3   4   [3288, Curitiba, 18]    [18, Paraná]
4   5   [162, Manaus, 3]        [3, Amazonas]

Я хочу сравнить для каждой строки третий элемент из массива Город с первым элементом из массива UF ,Я пытался так:

np.where((pdf.loc[pdf['Cidade']:, 2] == pdf.loc[pdf['UF']:, 0]), True, False)

Но безуспешно.Каждый подобный пример, который я нашел, касается сравнения всего массива.

вот несколько ссылок, которые я проверил здесь также здесь

Спасибов совете.

1 Ответ

0 голосов
/ 09 марта 2019

Почти то, что вы сказали @ Mstaino.

Я получил то, что хотел, используя код ниже:

np.where((pdf['Cidade'].apply(lambda x: x[2] if x is not None else None) == pdf['UF'].apply(lambda x: x[0] if x is not None else None)), True, False)

Спасибо за советы!

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