多维数组可以表示关系表和矩阵,由许多一维数组组成,多维数组经常用于存储数学计算、图像处理和维护记录的数据。
在本文中,通过 Python 编程语言的示例介绍了多维数组(2D、3D 和 4D 数组)的创建和实现。为了在 Python 中理解和实现多维数组,需要使用NumPy包。它是一个 Python 库,允许用户访问多维数组对象、各种派生对象(例如屏蔽数组和矩阵)以及用于快速操作数组和多维矩阵的一系列函数。
Python 语言创建列表的标准方式与数组非常相似,但请记住,Python编程语言中的列表和数组之间存在非常细微的差异。您可以了解有关 python 中列表与数组之间差异的更多信息。在本文中,我们只关注数组。下面的示例将展示通过标准方式创建的二维数组与使用 Numpy 包创建的二维数组的数据类型之间的差异。
#creating 2D array without any package arr1 = [[ 0 ] * 3 ] * 2 print (arr1) print ( type (arr1)) #creating 2D array with numpy package print ( "\n" ) arr2 = np.array([[ 1 , 2 , 3 , 4 ], [ 5 , 6 , 7 , 8 ]]) print (arr2) print ( type (arr2)) |
输出
在开始数组实现之前,请确保在当前 IDE 中安装并导入 Numpy 包,以避免任何类型的错误。为此,请运行以下代码行。
#To install the Numpy package pip install numpy #To import the Numpy package import numpy as np |
二维 (2D) 数组
数组的数组是一个适用于二维数组的简单定义。构成二维阵列组织结构的矩阵的行和列可以被视为其主要组成部分。二维数组可以可视化为包含行和列元素的表格(正方形或矩形)。下图描绘了二维数组的结构。
在Python中实现二维数组
让我们从使用 numpy 数组方法实现二维数组开始。
arr = np.array([array1 values..][array2 values...]) |
- arr:数组的名称
- np.array:Numpy 包的函数
array_1 = np.array([[ 1 , 2 , 3 , 4 ], [ 5 , 6 , 7 , 8 ]]) print ( "Output" ) print (array_1) |
输出
Python 中的三维 (3D) 数组
3-D(三维)数组主要由 2-D 数组组成。行、列和页面元素可以被视为 3D 阵列的主要组件。我们可以将其可视化为由附加的行和列组成的多个表(就像一个立方体)。下图描绘了三维数组的结构。
arr = numpy.array([ 2D_array1 values],[ 2D_array2 values]...) |
- arr:数组的名称
- np.array:Numpy 包的函数
array_2 = np.array([[[ 1 , 2 , 3 ],[ 3 , 4 , 5 ]], [[ 6 , 7 , 8 ],[ 9 , 8 , 7 ]], [[ 6 , 5 , 4 ],[ 3 , 2 , 1 ]]]) print ( "Output" ) print (array_2) |
输出
四维 (4D) 数组
定义 4D 数组的一种简单方法是它是 3D 数组的数组。可视化 4D 数组有点复杂,但我们可以说它是一组 3D 数组(就像一排立方体)。下图描绘了四维数组的结构。
句法
arr = numpy.array([3D_array1],[3D_array2]…)
- arr:数组的名称
- numpy.array:numpy包的函数
array_3 = np.array([[[[ 1 , 2 ],[ 3 , 4 ],[ 5 , 6 ]]], [[[ 7 , 8 ],[ 9 , 8 ],[ 7 , 6 ]]], [[[ 5 , 4 ],[ 3 , 2 ],[ 1 , 0 ]]]]) print ( "Output" ) print (array_3) |
输出
概括
数组是用于存储同质数据的出色数据结构。默认数组更像是Python中的列表数据结构。Numpy 是适用的开源免费软件包之一,有助于更快、更高效地创建和处理数组。Numpy 包还有许多其他内置函数来操作和重塑多维数组。Numpy 包中用于创建多维数组的其他一些内置函数如下:
要查看更多此类详细且易于理解的有关 Python 编程语言的文章, 请单击此处!