Numpy логически объединяет логические массивы с numpy.NaNPython

Программы на Python
Ответить
Гость
 Numpy логически объединяет логические массивы с numpy.NaN

Сообщение Гость »


Предположим, у меня есть 2 массива numpy. Первый всегда будет содержать ТОЛЬКО значения True или False. секунда может содержать True или False или numpy.NaN. Я хочу объединить два массива так, чтобы, если второй массив не имеет значения True или False (его значение равно numpy.NaN), он возьмет значение из того же места, что и первый массив, в противном случае он примет от значения True или False. Сбивает с толку? Большой! Вот несколько примеров:

# пример 1 a1 = np.array([True, False, True, False, True], dtype=object) a2 = np.array([np.NaN, np.NaN, np.NaN, np.NaN, np.NaN], dtype=объект) вывод = a1.combinaficate(a2) # печатает [True, False, True, False, True] # пример 2 a1 = np.array([True, False, True, False, True], dtype=object) a2 = np.array([np.NaN, True, np.NaN, False, np.NaN], dtype=объект) вывод = a1.combinaficate(a2) # печатает [True, True, True, False, True] # пример 3 a1 = np.array([True, True, True, True, True], dtype=object) a2 = np.array([np.NaN, np.NaN, np.NaN, False, np.NaN], dtype=объект) вывод = a1.combinaficate(a2) # печатает [True, True, True, False, True] # пример 4 a1 = np.array([False, False, False, False, False], dtype=object) a2 = np.array([np.NaN, np.NaN, True, False, np.NaN], dtype=object) вывод = a1.combinaficate(a2) # печатает [Ложь, Ложь, Правда, Ложь, Ложь] Я знаю, что мог бы написать цикл for, но суть вопроса такова: «Есть ли способ использовать строго numpy для выполнения этих вычислений?».

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

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»