testing if a numpy array is symmetric?

后端 未结 2 2056
清歌不尽
清歌不尽 2021-02-13 10:03

Is there a better pythonic way of checking if a ndarray is diagonally symmetric in a particular dimension? i.e for all of x

(arr[:,:,x].T==arr[:,:,x]).all()
         


        
2条回答
  •  心在旅途
    2021-02-13 10:31

    If your array contains floats (especially if they're the result of a computation), use allclose

    np.allclose(arr.transpose(1, 0, 2), arr)
    

    If some of your values might be NaN, set those to a marker value before the test.

    arr[np.isnan(arr)] = 0
    

提交回复
热议问题