您的位置:

Numpy二维数组转一维

一、Numpy一维数组转二维

Numpy一维数组可以通过reshape函数转换为二维数组。reshape函数的第一个参数是新数组的行数,第二个参数是列数。如果只给定一个参数,那么reshape函数会将数组转换为只有一列的二维数组。

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6])
new_arr = arr.reshape((2, 3))
print(new_arr)

运行结果:

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

二、Numpy将二维数组转为一维

Numpy提供了flatten和ravel函数,将二维数组转换为一维数组。

import numpy as np

arr = np.array([[1, 2], [3, 4], [5, 6]])
new_arr = arr.flatten()
print(new_arr)

运行结果:

[1 2 3 4 5 6]

三、Numpy二维数组切片

Numpy支持对二维数组进行切片。切片的使用方式与对列表进行切片类似。

import numpy as np

arr = np.array([[1, 2], [3, 4], [5, 6]])
sub_arr = arr[1:, 1:]
print(sub_arr)

运行结果:

[[4]
 [6]]

四、Numpy三维数组赋值

Numpy中的三维数组可以通过赋值改变数组中的元素。

import numpy as np

arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
arr[0][0][0] = 0
print(arr)

运行结果:

[[[0 2]
  [3 4]]

 [[5 6]
  [7 8]]]

五、Numpy两个一维数组合成二维数组

Numpy中的hstack和vstack函数可以将两个一维数组沿着水平方向和垂直方向组合成二维数组。

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
new_arr = np.vstack((arr1, arr2))
print(new_arr)

运行结果:

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

六、Numpy二维数组排序

Numpy提供了sort函数和argsort函数对二维数组进行排序。sort函数将数组中的元素原地排序,argsort函数返回排序后元素的索引。

import numpy as np

arr = np.array([[1, 3], [0, 2]])
new_arr = np.sort(arr)
print(new_arr)

运行结果:

[[1 3]
 [0 2]]

七、Numpy三维数组理解

三维数组可以看作是二维的二维数组。

import numpy as np

arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
print(arr[0])

运行结果:

[[1 2]
 [3 4]]

八、一维数组怎么变成二维数组numpy

可以使用reshape函数将一维数组转换为二维数组。

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6])
new_arr = arr.reshape((2, 3))
print(new_arr)

运行结果:

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

九、创建Numpy二维数组

可以使用array函数创建Numpy二维数组。

import numpy as np

arr = np.array([[1, 2], [3, 4], [5, 6]])
print(arr)

运行结果:

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

十、Numpy数组不同维度转换

Numpy提供了transpose函数、swapaxes函数和rollaxis函数对数组的维度进行转换。

import numpy as np

arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
new_arr = np.transpose(arr, (1, 0, 2))
print(new_arr)

运行结果:

[[[1 2]
  [5 6]]

 [[3 4]
  [7 8]]]