2 NumPy 数值计算基础-3-NumPy统计分析
2 NumPy 数值计算基础
2.3 利用 NumPy 进行统计分析
2.3.1 读写文件形式
NumPy文件读写主要有二进制的文件读写和文件列表形式的数据读写两种形式
- save函数是以二进制的格式保存数据。 np.save("…/tmp/save_arr",arr)
- load函数是从二进制的文件中读取数据。 np.load("…/tmp/save_arr.npy")
- savez函数可以将多个数组保存到一个文件中。 np.savez(’…/tmp/savez_arr’,arr1,arr2)
存储时可以省略扩展名,但读取时不能省略扩展名。
2.3.2 读取文本格式的数据
函数名称 | 函数作用 | 使用举例 |
---|---|---|
savetxt | 将数组写到某种分隔符隔开的文本文件中 | np.savetxt("…/tmp/arr.txt", arr, fmt="%d", delimiter=",") |
loadtxt | 把文件加载到一个二维数组中 | np.loadtxt("…/tmp/arr.txt",delimiter=",") |
genfromtxt | 面向结构化数组和缺失数据 | np.genfromtxt("…/tmp/arr.txt", delimiter = “,”) |
2.3.3 使用数组进行简单统计分析
直接排序
- sort函数是最常用的排序方法。 arr.sort()
- sort函数也可以指定一个axis参数,使得sort函数可以沿着指定轴对数据集进行排序。axis=1为沿横轴排序; axis=0为沿纵轴排序。
间接排序
- argsort函数返回值为重新排序值的下标。 arr.argsort()
- lexsort函数返回值是按照最后一个传入数据排序的。 np.lexsort((a,b,c))
去重与重复数据
- 通过unique函数可以找出数组中的唯一值并返回已排序的结果。
- tile函数主要有两个参数,参数“A”指定重复的数组,参数“reps”指定重复的次数。
np.tile(A,reps) - repeat函数主要有三个参数,参数“a”是需要重复的数组元素,参数“repeats”是重复次数,参数“axis”指定沿着哪个轴进行重复,axis = 0表示按行进行元素重复;axis = 1表示按列进行元素重复。
numpy.repeat(a, repeats, axis=None)这两个函数的主要区别在于,tile函数是对数组进行重复操作,repeat函数是对数组中的每个元素进行重复操作。
2.3.4 常用的统计函数
当axis=0时,表示沿着纵轴计算。当axis=1时,表示沿着横轴计算。默认时计算一个总值。