Numpy сравнить два 3D-массива и найти идентичные массивы

Это также может произойти, если в текущем рабочем каталоге веб-приложения есть файл php.ini. Если кто-то был помещен туда для изменения определенных параметров, он переопределит глобальный.

Чтобы избежать этой проблемы, не используйте настройки изменения php.ini; вместо этого сделайте это в объявлении vhost или в файле .htaccess с «php_flag».

См. также PHP Неустранимая ошибка: класс «PDO» не найден

0
задан Dashadower 16 January 2019 в 17:00
поделиться

1 ответ

Вы можете использовать np.where для замены значений в массиве согласно следующему условию:

np.where((mat == mat2).all(axis=2,  keepdims=True), [0,0], mat2)

array([[[0, 1],
        [0, 0],
        [0, 0]],

       [[0, 0],
        [0, 0],
        [0, 0]],

       [[0, 0],
        [2, 2],
        [0, 0]]])

Где (mat == mat2).all(axis=2, keepdims=True):

array([[[False],
        [ True],
        [ True]],

       [[ True],
        [ True],
        [ True]],

       [[ True],
        [False],
        [ True]]])
[1111 ] Возвращает маску тех же размеров, что и mat, которую можно использовать в качестве условия для np.where. Затем вам просто нужно указать, следует ли заменить эти значения на [0,0] или mat2 в зависимости от результата.

0
ответ дан yatu 16 January 2019 в 17:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: