Numpy库的简单用法(2)
1、numpy中的逐元素数组函数
numpy中的数组函数有很多,通过使用函数可以大大减少使用for、if等语句,常见的一元通用函数和二元通用函数如下表:
一元常用通用函数速查表
函数名 | 描述 |
---|---|
abs、fabs | 逐元素计算整数、浮点数或复数绝对值 |
sqrt | 计算每个元素的平方根(与arr**0.5)等价 |
square | 计算每个元素的平方(与arr**2)等价 |
exp | 计算每个元素的自然指数值e^x |
log、log10、log2、log1p | 分别对应以e为底、10为底、2为底、log(1+x)的值 |
sign | 计算每个元素的符号值:1(正数)、0(0)、-1(负数) |
ceil | 计算每个元素的最高整数值(即大于等于给定数值的最小整数) |
floor | 计算每个元素的最小整数值(即小于等于给定元素的最大整数) |
rint | 将元素保留到整数位,并保持dtype |
modf | 分别将数组的小数部分和整数部分按数组形式返回 |
isnan | 返回数组中的元素是否为一个NaN,返回值为一个布尔数组 |
cos、sin、tan | 常规三角函数 |
arccos、arcsin、arctan | 常规反三角函数 |
logical_not | 对数组元素按位取反(与~arr)效果一致 |
二元常用通用函数速查表
函数名 | 描述 |
---|---|
add | 数组对应元素相加 |
subtract | 在第二个数组中,将第一个数组中包含的元素去除 |
multiply | 将数组对应元素相乘 |
divide、floor_divide | 除或整除(放弃余数) |
power | 将第二个数组的元素作为第一个数组对应元素的幂次方 |
maximum、fmax | 逐元素计算最大值,fmax忽略NaN |
minimum、fmin | 逐元素计算最小值,fmin忽略NaN |
mod | 按元素求模计算(除法的余数) |
greater、greater_equal、less、less_equal、equal、not_equal | 逐元素进行比较,返回布尔数组,与数学操作符>,<,=等一致 |
logical_and、logical_or、logical_xor | 逐元素逻辑操作,与操作符&、|、^效果一致 |
使用举例:
一元函数用法
二元函数用法
对于常用的方法我们需要掌握,在实际应用中应该首先考虑能不能用现有的方法使用而不是一味的使用for循环等语句。
2、使用数组进行面向数组编程
(1)将条件逻辑作为数组操作
numpy.where函数是三元表达式x if condition else y简单表示。如下面例子:
这样会产生多个问题,如果使用for循环,当数据量很大,速度会很慢,其次当数据为多维时就不行了,下面使用numpy.where为例:
可以对numpy.where灵活运用:
(2)数学和统计方法
numpy中常见的数学统计方法如下表:
方法 | 描述 |
---|---|
sum | 沿轴向计算所有元素的和 |
mean | 计算平均值 |
std、var | 标准差和方差,可以选择自由度(默认分母是n) |
min、max | 最小值和最大值 |
argmin、argmax | 最小值和最大值的位置 |
cumsum | 从0开始元素累积和 |
cumprod | 从1开始元素累积积 |
在编程中,行和列用axis表示,axis=1表示行上计算,axis=0表示列上计算。
相关文章
- 数据孤岛是业务效率的无声杀手
- 2023展望:新的一年将给大数据分析领域带来什么?
- 阿里云ADB基于Hudi构建Lakehouse的实践
- 大数据在医疗保健领域的使用案例
- 微软增加说明:KB5021751 更新扫描已经 / 即将过时 Office 过程中不会触碰用户隐私
- 2022 Gartner全球云数据库管理系统魔力象限发布 腾讯云数据库入选
- 场景化、重实操,分享一个实时数仓实践案例
- Arctic的湖仓一体践行之路
- 分布式计算MapReduce究竟是怎么一回事?
- 淘系数据模型治理优秀实践
- 大数据分析对医疗保健的影响
- 当我们说大数据Hadoop,究竟在说什么?
- 2022年及以后大数据的五个发展趋势
- 网易严选离线数仓治理实践
- 2023 年数据治理趋势
- 一份“靠谱”的年度经营计划,你学会了吗?
- 漫谈对大数据的思考
- 测试一下,读懂数据的能力,你有吗?
- 用艺术的眼光探索数据之美
- 聊聊数据分析成果如何落地