如何使用给定的索引位置重新排列二维NumPy数组的列

如何使用给定的索引位置重新排列二维NumPy数组的列

在这篇文章中,我们将学习如何使用给定的索引位置重新排列一个给定的numpy数组的列。这里的列是用给定的索引重新排列的。为此,我们可以简单地将列值存储在列表中,并根据给定的索引列表排列这些列,但这种方法成本很高。因此,通过使用numpy数组的概念,可以在最短的时间内轻松完成。

示例 :

Arr = [[1,2,3,4,5], [1,2,3,4,5], [1,2,3,4,5]] and i = [2, 4, 0, 3, 1]
那么输出是[[3,5,1,4,2],[3,5,1,4,2],[3,5,1,4,2],[3,5,1,4,2],[3,5,1,4,2]] 。

这里,i[0]=2,即;第三列,所以输出=[[3],[3],[3],][3],[3]]
i[1]=4,即;第5列,所以输出=[[3,5],[3,5],][3,5],[3,5]]
i[2] = 0 即;第1列,所以输出 =[[3,5,1], [3,5,1], [3,5,1],][3,5,1]]
i[3] = 3 即;第四列,所以输出 =[[3,5,1,4],[3,5,1,4],[3,5,1,4],][3,5,1,4]]
i[4] = 1 即;第二列,所以输出 = [[3,5,1,4,2], [3,5,1,4,2], [3,5,1,4,2],] [3,5,1,4,2]]

下面是一个例子的实现。

# importing package
import numpy
  
# create a numpy array
arr = numpy.array([[1,2,3,4,5],
                   [1,2,3,4,5],
                   [1,2,3,4,5],
                   [1,2,3,4,5],
                   [1,2,3,4,5]
                   ])
  
# view array
print(arr)
  
# declare index list
i = [2,4,0,3,1]
  
# create output
output = arr[:,i]
  
# view output
print(output)

输出 :

[[1 2 3 4 5]
 [1 2 3 4 5]
 [1 2 3 4 5]
 [1 2 3 4 5]
 [1 2 3 4 5]]
[[3 5 1 4 2]
 [3 5 1 4 2]
 [3 5 1 4 2]
 [3 5 1 4 2]
 [3 5 1 4 2]]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Numpy 数组操作