1.快速排序
np.sort() 与 ndarray.sort() 都可以,但有区别:
-
np.sort():不改变原数组,创建一个新的数组,开辟新的内存空间
-
ndarray.sort():改变原数组,不多占内存空间
# 导包
import numpy as np
n1 = np.random.randint(0,10,size=6)
n1
# 执行结果
array([5, 0, 2, 5, 8, 2])
# 不改变原数组排序
n2 = np.sort(n1)
n2
# 执行结果
array([0, 2, 2, 5, 5, 8])
n1
# 执行结果
array([5, 0, 2, 5, 8, 2])
n3 = np.random.randint(0,10,size=6)
n3
# 执行结果
array([4, 8, 6, 5, 5, 2])
# 改变原数组排序
n3.sort()
n3
# 执行结果
array([2, 4, 5, 5, 6, 8])
2.保存数组
-
save:保存 ndarray 到一个 npy 文件
-
savez:将多个 array 保存到一个 npz 文件中
x = np.arange(5)
y = np.arange(10,20)
# save
np.save("x",x)
# savez
np.savez("arr.npz",xarr=x,yarr=y)
3.读取数组
# 读取 npy 文件
np.load("./x.npy")
# 执行结果
array([0, 1, 2, 3, 4])
# 读取 npz文件
np.load("./arr.npz")["xarr"]
# 执行结果
array([0, 1, 2, 3, 4])
np.load("./arr.npz")["yarr"]
# 执行结果
array([10, 11, 12, 13, 14, 15, 16, 17, 18, 19])
4.csv、txt文件的读写操作
n = np.random.randint(0,10,size=(3,4))
n
# 执行结果
array([[8, 6, 5, 5],
[2, 0, 4, 8],
[0, 7, 3, 9]])
# 存储到csv或txt,csv需要设置delimiter=",":分隔符
np.savetxt("arr.csv",n,delimiter=",")
# 读取csv或text
np.loadtxt("./arr.csv",delimiter=",",dtype=np.int16)
# 执行结果
array([[8, 6, 5, 5],
[2, 0, 4, 8],
[0, 7, 3, 9]], dtype=int16)
np.savetxt("arr.text",n)
np.loadtxt("./arr.text",dtype=np.int16)
# 执行结果
array([[8, 6, 5, 5],
[2, 0, 4, 8],
[0, 7, 3, 9]], dtype=int16)