Python中对numpy库的学习(五)常用函数1-分段函数和统计函数

时间:2024-10-10 20:58:15

目录

一、分段函数概念

二、分段函数(where,select,piecewise)

1、where函数

2、select函数

3、piecewise函数

三、统计函数

1、均值、方差、标准差

2、加权平均值、中位数、分位数

3、极值与排序

4、统计


一、分段函数概念

分段函数高效简练,可以将 if 条件和选择(是否符合条件之后的内容)用一条语句实现对数组的处理。

二、分段函数(where,select,piecewise)

1、where函数

将if condition:y1 else:y2整合。常用于一个条件时。

语法:where(condition,y1,y2)。参数condition,y1,y2都是用于生成数组的表达式(或者大小相同的数组)

例如:对0-9进行筛选,小于5返回原值,其余返回10-元素的值

import numpy as np

a = (10)
print(a)
# 输出:[0 1 2 3 4 5 6 7 8 9]
print((a < 5, a, 10-a))
# 输出:[0 1 2 3 4 5 4 3 2 1]

2、select函数

当条件比较多,使用select函数会更高效。

语法:select(condilist,choicelist,default=0)。condilist为条件列表,choicelist选择列表,default默认为0(在条件之外的选择)

例如:对0-9进行筛选,小于3返回-1,大于6返回1,其余返回0

import numpy as np

a = (10)
print(a)
# 输出:[0 1 2 3 4 5 6 7 8 9]
print(([a<3, a>6], [-1, 1], 0))
# 输出:[-1 - 1 - 1  0  0  0  0  1  1  1]

3、piecewise函数

piecewise函数是select函数的扩展,不但支持多个条件取值,还可以按条件运行不同函数和lambda表达式。

语法:piecewise(a,condilist,funclist)。三个参数,a为待转换数组,condilist为条件列表,funclist为函数名(或者表达式)

例如:对0-9进行筛选&#x