前言:
此刻你们对“python一维数组排序”可能比较注意,咱们都需要知道一些“python一维数组排序”的相关知识。那么小编在网上收集了一些对于“python一维数组排序””的相关内容,希望兄弟们能喜欢,看官们快快来学习一下吧!【连续“Python利用Numpy数组进行数据处理(一)”】
2.【聚合函数】数学和统计方法[轴和0]
可以通过数组上的一组数学函数对整个数组或某个轴向的数组进行统计计算。
书写方式举例:
arr.mean() 或np.mean(arr)
#mean和sum这类的函数可以接受一个axis参数(用于计算该轴向上的统计值),最终结果是一个少一维的数组:
#搞清楚轴和0的问题【重要】
arr.mean(axis=1)
arr.sum(0)
表4-5 基本数组统计方法:
方法
说明
sum
对数组中全部或某轴向的元素求和。零长度的数组的sum为0
mean
算术平均数。零长度的数组的mean为NaN
std、var
分别为标准差和方差,自由度可调(默认为n)
min、max
最小值和最大值
argmin、argmax
分别为最小和最大元素的索引
cumsum
所有元素的累计和
sumprod
所有元素的累计积
3.用于布尔型数组的方法[any/all]
在上面这些方法中,布尔值会被强制转换为1(True)和0(False)。因此,sum经常被用来对布尔型数组中的True值计数:
In [5]: arr=np.random.randn(100)
In [7]: (arr>0).sum() #正值的数量
Out[7]: 50
any
用于测试数组中是否存在一个或多个True。
all
检查数组中所有值是否都是True。
In [2]: bools=np.array([False,False,True,False])
In [3]: bools.any()
Out[3]: True
In [4]: bools.all()
Out[4]: False
4.排序
Numpy数组也可以通过sort方法就地排序:
In [8]: arr=np.random.randn(8)
In [10]: arr.sort()
In [11]: arr
Out[11]:
array([-0.67762856, -0.60940946, -0.04936393, -0.02071468, 0.45711082,
1.23125481, 1.39542771, 1.53330519])
#轴上进行排序
arr.sort(1)
其中1为轴编号。
顶级方法np.sort返回的是数组的已排序副本,而就地排序则会修改数据本身。计算数组分位数最简单的方法是对其进行排序,然后选取特定位置的值:
In [12]: large_arr=np.random.randn(1000)
In [13]: large_arr.sort()
In [14]: large_arr[0.05*len(large_arr)]
Out[14]: -1.5975734429305708
5.唯一化以及其他的集合逻辑
Numpy提供了一些针对一维ndarray的基本集合运算。
5.1 np.unique
主要用于找出数组中的唯一值并返回已排序的结果。
书写方式:np.unique(names)
5.2 np.in1d
主要用于测试一个数组中的值在另一个数组中的成员资格,返回一个布尔型数组。
书写方式:np.in1d(value1,value2)
In [3]: values=np.array([6,0,0,3,2,5,6])
In [4]: np.in1d(values,[2,3,6])
Out[4]: array([ True, False, False, True, True, False, True], dtype=bool)
「亲,如果笔记对您有帮助,收藏的同时,记得给点个赞、加个关注哦!感谢!」
「文中代码均亲测过,若有错误之处,欢迎批评指正,一起学习,一起成长!」
利用python进行数据分析
标签: #python一维数组排序