Numpy 数组
在Python中使用NumPy的一个主要优势是,NumPy的array
对象可以比Python列表更好地处理数据。Python列表是一个通用的容器,可以包含任何类型的对象。Python列表没有任何特殊的功能,只是一个集合,并可以使用Python语言中的方式进行操作。
但是,NumPy的array
对象是一个真正的数组,它不容易被拓展,这正是它的优势之一。因为NumPy的数组是固定的,所以比Python列表更高效地存储和处理数据。NumPy数组的所有元素必须是相同类型的数据。
阅读更多:Numpy 教程
创建NumPy数组
我们可以使用多种方式来创建NumPy数组:
1. 从Python列表中创建
可以使用NumPy的array
函数来创建一个NumPy数组。可以通过传递Python列表或元组来创建一个数组。例如,我们可以使用以下代码创建一个NumPy数组:
输出结果:
同样的方式我们可以创建二维数组:
输出结果:
2. 使用arange
函数创建等差数列数组
下面是使用NumPy的arange
函数创建等差数列数组的例子。arange函数的第一个参数是起始值,第二个参数是终止值,第三个参数是步长。例如,以下代码生成1到10之间的等差数列:
输出结果:
3. 使用linspace
函数创建等分数列数组
NumPy的linspace
函数可以被用来在指定的范围内创建一个等分数列数组。例如,以下是创建一个1到10之间的等分数列数组的例子:
输出结果:
第三个参数指定了需要生成的数组元素数量。
NumPy数组的属性
当然,我们运行创建数组的代码后,我们想知道它的一些属性,例如大小、形状、数据类型等。我们可以使用以下属性来查看这些属性:
1. ndim
属性
可以使用ndim
属性检查数组的维度。例如,以下代码检查了数组a
的维度:
输出结果:
我们创建的数组a
是一个一维数组。
2. shape
属性
shape
是一个元组,它只是我们创建数组时指定的形状。因此,shape属性告诉我们数组的大小。例如,以下代码检查了数组b
的形状:
输出结果:
我们创建的数组b
是一个2行、3列的数组。
3. size
属性
size
属性给出了数组的元素总数。例如,以下代码检查了数组c
的元素总数:
输出结果:
我们创建的数组c
有10个元素。
4. dtype
属性
dtype
属性描述了数组的元素类型。例如,以下代码检查了数组a
和d
的元素类型:
输出结果:
我们创建的数组a
的元素类型是32位整型,而数组d
的元素类型是64位浮点型。
数组的索引和切片
NumPy数组的索引和切片与Python列表非常相似。例如,以下代码演示了如何使用索引来访问数组的元素:
输出结果:
接下来,我们演示如何使用切片来访问数组中的元素区间,如下所示:
输出结果:
数组的运算
这里要注意的是,算术操作不仅能够应用于NumPy数组和标量,也可以应用于两个数组。在这种情况下,它们的形状必须相同。下面,我们演示了如何将两个数组相加:
输出结果:
还可以使用各种函数对数组进行处理。例如,以下代码演示如何计算数组的平均值、最大值和最小值:
输出结果:
总结
总之,NumPy的array
对象提供了一种非常实用的方式来处理和存储数据。我们可以轻松地创建、索引、切片和运算数组,以及对数组进行各种处理。在数据科学中,NumPy的array
这个工具是一个很强大的工具,值得学习和掌握。