上一节我们学习了一维数组生成和计算,这一节将引入多维数组。难度会有所加大,请大家认真阅读,下载安装好Anaconda进行python练习~
第二节 NumPy进阶
目录
一. 多维数组
二. 二维数组的加减乘除
三. 二维数组的通用方法
四. 二维数组的索引和分片
五. 实用方法
➡ 一. 多维数组
多维数组的学习可以联想多维坐标系,比如一维、二维、三维坐标。下面的图很形象的反映的多维数组的样子
创建一组二维数组,如下
# 二维数组
import numpy as npnested_list = [[1, 2], [3, 4]]data = np.array(nested_list)print(data)
# 输出的结果如下:[[1 2]
[3 4]]
可以看到,二维数组也是用空格分隔的,并且分成了两行。列表中的第一个元素 [1, 2] 在第一行,第二个元素 [3, 4] 在第二行。
那么问题来的:还记得上一节学过的ones()和zeros()方法吗?(忘记的话要记得复习哟)怎么用这两个方法创建二维数组呢?
与之前的区别在于,创建二维数组要传入一个包含行和列信息的元组。比如:np.ones((m, n)) 表示创建一个 m 行 n 列且元素全为 1 的二维数组;np.zeros((m,n))表示创建一个m行n列且元素全为0的二维数组。
ones = np.ones((3, 2))print(ones)
输出的结果就为:
[[1. 1.]
[1. 1.]
[1. 1.]]
接下来我们来认识几个描述多维数组的属性:
⚫ ndim:多维数组维度的个数。例如:二维数组的 ndim 为 2;
⚫ shape:多维数组的形状。它是一个元组,每个元素分别表示每个维度中 数组的长度。对于 m 行和 n 列的的数组,它的 shape 将是 (m, n)。因此,shape 元组的长度(元素个数)就是 n