2015-10-20 139 views
4

我想更改打印屏蔽陣列中表示屏蔽值的符號。我得到的是:屏蔽陣列:如何更改表示屏蔽值的符號

>>> print ma.array([[1, 0,0,1],[1,0,1,0]],mask=[[0,0,0,1],[1,1,0,1]]) 
[[1 0 0 --] 
[-- -- 1 --]] 

我寧願:

[[1 0 0 -] 
[- - 1 -]] 

我試着設置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 --]] 

回答

2

你是接近!

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)