通过实例学习功能是一个很好的方式,现在我们开始吧:
1、如何引入numpy包并命名为np?
import numpy as np
2、如何显示numpy包的版本和配置?
print(np.__version__)
np.show_config()
3、如何创建一个长度为10的空向量?
Z = np.zeros(10)
print(Z)
4、如何在命令行获得numpy包内add函数的文档说明?
python -c "import numpy; numpy.info(numpy.add)"
5、如何创建一个长度为10的空向量,并在第四个位置上赋值1?
Z = np.zeros(10)
Z[4] = 1
print(Z)
6、如何创建一个向量并赋值为从10到49?
Z = np.arange(10,50)
print(Z)
7、如何倒置一个向量(原第一个值变为最后一个)?
Z = np.arange(50)
Z = Z[::-1]
8、如何创建一个3x3的矩阵,并赋值0-8?
Z = np.arange(9).reshape(3,3)
print(Z)
9、如何在[1,2,0,0,4,0]中找出非零的元素?
nz = np.nonzero([1,2,0,0,4,0])
print(nz)
10、如何创建一个3x3的单位矩阵?
Z = np.eye(3)
print(Z)
11、如何创建一个3x3x3的多维数组,并随机赋值?如何改变数值属性为字符串型?
Z.astype(str)
print(Z)
12、如何对查找一个随机赋值10x10数组中的最大数和最小数?
Zmin, Zmax = Z.min(), Z.max()
print(Zmin, Zmax)
13、如何计算一个长度为30的向量的平均值?
m = Z.mean()
print(m)
14、如何创建一个二维数组,边框为1,内部为0?
Z = np.ones((10,10))
Z[1:-1,1:-1] = 0
15、下列表达式结果是什么?
0 * np.nan nan
np.nan == np.nan False
np.inf > np.nan False
np.nan - np.nan nan
0.3 == 3 * 0.1 False
16、如何建一个5x5的矩阵,并将1、2、3、4放在对角线下方?
Z = np.diag(1+np.arange(4),k=-1)
print(Z)
17、如何创建一个8x8矩阵,并且填充为棋盘图案?
Z = np.zeros((8,8),dtype=int)
Z[1::2,::2] = 1
Z[::2,1::2] = 1
print(Z)
array([[0, 1, 0, 1, 0, 1, 0, 1],
[1, 0, 1, 0, 1, 0, 1, 0],
[0, 1, 0, 1, 0, 1, 0, 1],
[1, 0, 1, 0, 1, 0, 1, 0],
[0, 1, 0, 1, 0, 1, 0, 1],
[1, 0, 1, 0, 1, 0, 1, 0],
[0, 1, 0, 1, 0, 1, 0, 1],
[1, 0, 1, 0, 1, 0, 1, 0]])
18、考虑一个6x7x8的多维数组,第100个元素的坐标是什么?
print(np.unravel_index(100,(6,7,8)))
(1,5,4)
19、如何用tile函数创建一个8x8的棋盘矩阵?
Z = np.tile( np.array([[0,1],[1,0]]), (4,4))
print(Z)
20、如何标准化(将随机数调整为0-1间随机分布)一个5x5的随机矩阵?
Zmax, Zmin = Z.max(), Z.min()
Z = (Z - Zmin)/(Zmax - Zmin)
print(Z)
(未完待续)
领取专属 10元无门槛券
私享最新 技术干货