Как конвертировать ноль в нан в массиве? - PullRequest
0 голосов
/ 03 октября 2018

enter image description here

Я использовал temp[temp==0] = np.nan, но получил эту ошибку:

IndexError: 2-мерное логическое индексирование не поддерживается.

1 Ответ

0 голосов
/ 03 октября 2018

Я бы использовал where, чтобы не приходилось опускаться до numpy:

In [35]: d
Out[35]: 
<xarray.DataArray (dim_0: 2, dim_1: 3)>
array([[0, 1, 2],
       [3, 4, 5]])
Dimensions without coordinates: dim_0, dim_1

In [36]: d.where(d != 0)
Out[36]: 
<xarray.DataArray (dim_0: 2, dim_1: 3)>
array([[nan,  1.,  2.],
       [ 3.,  4.,  5.]])
Dimensions without coordinates: dim_0, dim_1

и который автоматически переместится на поплавки при необходимости.

...