Python Numpy中的ndarray介绍
ndarray
是Numpy中一个重要的数据结构,它是一个多维数组,可以用于存储和处理大量的数据。本攻略将细介绍Python Numpy中的ndarray
。
导入Numpy模块
在使用Numpy模块之前,需要先导入它。可以以下命令在Python脚本中导入Numpy模块:
import numpy as np
在上面的示例中我们使用import
关键字导入了Numpy模块,并将其重命名为np
,以便在代码中更方便地使用。
创建ndarray
可以使用以下方法创建一个ndarray
:
1. 使用np.array()
函数创建
可以使用np.array()
函数创建一个ndarray
,例如:
import numpy as np
# 创建一个一维数组
a = np.array([1, 2, 3])
# 创建一个二维数组
b = np.array([[1, 2, 3], [4, 5, 6]])
# 创建一个三维数组
c = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
在上面的示例中,我们分别使用np.array()
函数创建了一个一维数组a
、一个二维数组b
和一个三维数组c
。
2. 使用np.zeros()
函数创建
可以使用np.zeros()
函数创建一个全为0的ndarray
,例如:
import numpy as np
# 创建一个全为0的一维数组
a = np.zeros(3)
# 创建一个为0的二维数组
b = np.zeros((2, 3))
# 创建一个全为0的三维数组
c = np.zeros((2, 2, 2))
在上面的示例中,我们分别使用np.zeros()
函数创建了一个全为0的一维数组a
、一个全为0的二维数组b
和一个全为0的三维数组“。
3. 使用np.ones()
函数创建
可以使用np.ones()
函数创建一个全为1的ndarray
,例如:
import numpy as np
# 创建一个全为1的一维数组
a = np.ones(3)
# 创建一个全为1的二维数组
b = np.ones((2 3))
# 创建一个全为1的三维数组
c = np.ones((2, 2, 2))
在上面的示例中,我们分别使用np.ones()
函数创建了一个全为1的一维数组a
、一个全为1的二维数组b
和一个全为1的三维数组c
。
4. 使用np.arange()
函数创建
可以使用np.arange()
函数创建一个等差数列的ndarray
,例如:
import numpy as np
# 创建一个等差数列的一维数组
a = np.arange(1, 4)
# 创建一个等差数列的二维数组
b = np.arange(1,7).reshape(2, 3)
# 创建一个等差数列的三维数组
c = np.arange(1, 9).reshape(2, 2, 2)
在上面的示例中,我们分别使用np.arange()
函数创建了一个等差数列的一维数组a
、一个等差数列的二维数组b
和一个等差数列的三维数组c
。
ndarray的属性
ndarray
有以下一些重要的属性:
1. ndarray.shape
shape
属性返回一个元组,表示ndarray
的形状,例如:
import numpy as np
# 创建一个二维数组
a = np.array([[1, 2, 3], [4, 5, 6]])
# 打印形状
print(a.shape)
在上面的示例中,我们首先使用np.array()
函数创建了一个二维数组a
,并将结果保存在变量a
中。接着,使用shape
属性打印出了ndarray
的形状。
输出为:
(2, 3)
2. ndarray.ndim
ndim
属性返回一个整数,表示ndarray
的维度,例如:
import numpy as np
# 创建一个三维数组
a = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8])
# 打印维度
print(a.ndim)
在上面的示例中,我们首先使用np.array()
函数创建了一个三维数组a
,并将结果保存在变量a
中。接着,使用ndim
属性打印出了ndarray
的维度。
结果为:
3
3. ndarray.size
size
属性返回一个整数,表示ndarray
中元素的总数,例如:
import numpy as np
# 创建一个二维数组
a = np.array([[1, 2, 3], [4, 5, 6]])
# 打印元素总数
print(a.size)
在上面的示例中,我们首先使用np.array()
函数创建了一个二维数组a
,并将结果保存在变a
中。接着,使用size
属性打印出了ndarray
中元素的总数。
输出结果为:
6
`
## 示例一:使用ndarray进行矩阵乘法
下面是一个使用`ndarray`进行矩阵乘法的示例:
```python
import numpy as np
# 创建两个二维数组
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])
# 矩阵乘法
c = np.dot(a, b)
# 打印结果
print(c)
在上面的示例中,我们首先使用np.array()
函数创建了两个二维数组a
和b
,并将结果保存在变量a
和b
中。接着,使用np.dot()
函数进行矩阵乘法,将结果保存在变量c
中。最后,使用print()`函数打印出了结果。
输出结果为:
[[19 22]
[43 50]]
示例二:使用ndarray进行数组切片
下面是一个使用ndarray
进行数组切片的示例:
import numpy as np
# 创建一个二维数组
a = np.array([[1, 2, 3], [, 5, 6], [7, 8, 9]])
# 数组切片
b = a[1:, :2]
# 打印结果
print(b)
在上面的示例中,我们首先使用np.array()
函数创建了一个二维数组a
,并将结果保存在变a
中。接着,使用数组切片将a
的第二行及以后的行和第一列及以前的列切出来,将结果保存在变量b
中。最后,使用print()
函数打印出了结果。
输出结果为:
[[4 5]
[7 8]]
结语
本攻略详细介绍了Python Numpy中的ndarray
,包括创建ndarray
、ndarray
的属性、使用ndarray
进行矩阵乘法和数组切片等。同时,本攻略还提供了两个示例,分别演示了如何使用ndarray
进行矩阵乘法和数组切片。掌握这些用法可以帮助我们更好地处理和分析数据。