import numpy as np
a = np.arange(6)print('我们的数组是:')print(a)print('调用 id() 函数:')print(id(a))print('a 赋值给 b:')
b = a
print(b)print('b 拥有相同 id():')print(id(b))print('修改 b 的形状:')
b.shape =3,2print(b)print('a 的形状也修改了:')print(a)
import numpy as np
a = np.array([1,2,3,4,5])# 保存到 outfile.npy 文件上
np.save('outfile.npy',a)# 保存到 outfile2.npy 文件上,如果文件路径末尾没有扩展名 .npy,该扩展名会被自动加上
np.save('outfile2',a)# load() 函数来读取数据
b = np.load('outfile.npy')print(b)
(2)numpy.savez() 函数将多个数组保存到以 npz 为扩展名的文件中
import numpy as np
a = np.array([[1,2,3],[4,5,6]])
b = np.arange(0,1.0,0.1)
c = np.sin(b)# c 使用了关键字参数 sin_array
np.savez("runoob.npz", a, b, sin_array=c)
r = np.load("runoob.npz")print(r.files)# 查看各个数组名称print(r["arr_0"])# 数组 aprint(r["arr_1"])# 数组 bprint(r["sin_array"])# 数组 c
import numpy as np
a=np.arange(0,10,0.5).reshape(4,-1)
np.savetxt("out.txt",a,fmt="%d",delimiter=",")# 改为保存为整数,以逗号分隔
b = np.loadtxt("out.txt",delimiter=",")# load 时也要指定为逗号分隔print(b)
7.NumPy Matplotlib
Matplotlib 是 Python 的绘图库,它可与 NumPy 一起使用
(1)绘制正弦余弦值
import numpy as np
import matplotlib.pyplot as plt
# 计算正弦和余弦曲线上的点的 x 和 y 坐标
x = np.arange(0,3* np.pi,0.1)
y_sin = np.sin(x)
y_cos = np.cos(x)# 建立 subplot 网格,高为 2,宽为 1 # 激活第一个 subplot
plt.subplot(2,1,1)# 绘制第一个图像
plt.plot(x, y_sin)
plt.title('Sine')# 将第二个 subplot 激活,并绘制第二个图像
plt.subplot(2,1,2)
plt.plot(x, y_cos)
plt.title('Cosine')# 展示图像
plt.show()
(2)生成两组 x 和 y 数组的条形图
from matplotlib import pyplot as plt
x =[5,8,10]
y =[12,16,6]
x2 =[6,9,11]
y2 =[6,15,7]
plt.bar(x, y, align ='center')
plt.bar(x2, y2, color ='g', align ='center')
plt.title('Bar graph')
plt.ylabel('Y axis')
plt.xlabel('X axis')
plt.show()
(3)Matplotlib 可以将直方图的数字表示转换为图形
from matplotlib import pyplot as plt
import numpy as np
a = np.array([22,87,5,43,56,73,55,54,11,20,51,5,79,31,27])
plt.hist(a, bins =[0,20,40,60,80,100])
plt.title("histogram")
plt.show()