Как найти повторяющиеся значения в массиве NumPy? Найдите повторяющиеся значения (начиная со второго вхождения) в заданном массиве и отметьте их как True. Первое вхождение отмечайте как False.

Ввод:

np.random.seed(10)
a = np.random.randint(0, 7, 10)
print(a)
# [1 5 4 0 1 3 4 1 5 0]

Ожидаемый вывод:

[False False False False True False True True True True]

Решение:

# Ввод
np.random.seed(10)
a = np.random.randint(0, 7, 10)

# Решение

# Создаём массив с True
out = np.full(a.shape[0], True)

# Находим индексы уникальных элементов
pos = np.unique(a, return_index=True)[1]

# Помечаем их как False
out[pos] = False

print(out)