掩码数组:如何更改表示掩码值的符号

Wal*_*dek 5 python arrays numpy

我想更改代表打印的掩码数组中掩码值的符号。我得到的是:

>>> print ma.array([[1, 0,0,1],[1,0,1,0]],mask=[[0,0,0,1],[1,1,0,1]])
[[1 0 0 --]
 [-- -- 1 --]]
Run Code Online (Sandbox Code Playgroud)

我会比较喜欢:

[[1 0 0 -]
 [- - 1 -]]
Run Code Online (Sandbox Code Playgroud)

我尝试设置numpy.ma.masked_print_option,但不起作用:

>>> numpy.ma.masked_print_options = '-'
>>> print ma.array([[1, 0,0,1],[1,0,1,0]],mask=[[0,0,0,1],[1,1,0,1]])
[[1 0 0 --]
 [-- -- 1 --]]
Run Code Online (Sandbox Code Playgroud)

Ran*_*ndy 4

你很接近!

In [4]: np.ma.masked_print_option.set_display("-")

In [5]: np.ma.array([[1, 0,0,1],[1,0,1,0]],mask=[[0,0,0,1],[1,1,0,1]])
Out[5]:
masked_array(data =
 [[1 0 0 -]
 [- - 1 -]],
             mask =
 [[False False False  True]
 [ True  True False  True]],
       fill_value = 999999)
Run Code Online (Sandbox Code Playgroud)