我有两个蒙版数组,两种形式都是:
masked_array(data =
[[-- -- -- ..., -- -- --]
[-- -- -- ..., -- -- --]
[-- -- -- ..., -- -- --]
...,
[-- -- -- ..., -- -- --]
[-- -- -- ..., -- -- --]
[-- -- -- ..., -- -- --]],
mask =
[[ True True True ..., True True True]
[ True True True ..., True True True]
[ True True True ..., True True True]
...,
[ True True True ..., True True True]
[ True True True ..., True True True]
[ True True True ..., True True True]],
fill_value = -9999.0)
当我将它们相乘时,fill_value会变为fill_value = 1e+20
为什么会这样?以及如何保留以前的填充值?这就是我对他们的看法:
array_a * array_b
答案 0 :(得分:1)
您引用的行为是由this commit从2013年10月开始引入的,该行为从v1.10.0开始发布。
我不能100%确定是否应将其视为错误。这对我来说似乎是不合理的,但是文档似乎没有说明当ufunc应用于填充值时应该发生什么。 numpy GitHub跟踪器上有couple个相关open issues。