длина numpy.unique в 2D списке формы (1, *) - PullRequest
1 голос
/ 05 июля 2019

При вызове numpy.unique для списка формы (1, X), например a = [[1,2]], len(numpy.unique(a)) возвращает X, а не, как я ожидал, 1. Вообще говоря, numpy.unique кажется трактовать a как массив 1D ..

В отличие от этого, len(numpy.array(a)) возвращает 1.

Какова мотивация этого?

РЕДАКТИРОВАТЬ: Python версии 3.7.3

1 Ответ

3 голосов
/ 05 июля 2019

Ответ вы получите, потому что массив сглажен.И длина [1,2] действительно равна 2. Я считаю, что причина, по которой это делается, состоит в том, чтобы просто предоставить пользователю максимальную гибкость.

То, что вы искали, может быть достигнуто следующим образом:

len(np.unique(a, axis=0))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...