np.fliplr()的作用
fliplr()是Numpy库中的函数,作用是将数组在左右方向上翻转.
需要注意的是,fliplr()在左右方向上翻转每行的元素,列保持不变,但是列的显示顺序变了.
下面我们来看一下github上给出的fliplr()函数的source代码:
def fliplr(m):
"""
Flip array in the left/right direction.
Flip the entries in each row in the left/right direction.
Columns are preserved, but appear in a different order than before.
Parameters
----------
m : array_like
Input array, must be at least 2-D.
Returns
-------
f : ndarray
A view of `m` with the columns reversed. Since a view
is returned, this operation is :math:`\\mathcal O(1)`.
See Also
--------
flipud : Flip array in the up/down direction.
rot90 : Rotate array counterclockwise.
Notes
-----
Equivalent to m[:,::-1]. Requires the array to be at least 2-D.
>>> A = np.diag([1.,2.,3.])
>>> A
array([[ 1., 0., 0.],
[ 0., 2., 0.],
[ 0., 0., 3.]])
>>> np.fliplr(A)
array([[ 0., 0., 1.],
[ 0., 2., 0.],
[ 3., 0., 0.]])
>>> A = np.random.randn(2,3,5)
>>> np.all(np.fliplr(A) == A[:,::-1,...])
True
"""
m = asanyarray(m)
if m.ndim < 2:
raise ValueError("Input must be >= 2-d.")
return m[:, ::-1]
再来举一个例子:
import numpy as np
array = np.arange(8).reshape((2,2,2))
print("Original array : \n", array)
# fliplr : means flip left-right
print("\nFlipped array left-right : \n", np.fliplr(array))
输出结果为:
Original array :
[[[0 1]
[2 3]]
[[4 5]
[6 7]]]
Flipped array left-right :
[[[2 3]
[0 1]]
[[6 7]
[4 5]]]
参考资料
[1] numpy.fliplr()
[2] https://www.geeksforgeeks.org/numpy-fliplr-python/