Python中求对数方法总结


Posted in Python onMarch 10, 2020

Python中Math库和Python库都具备求对数的函数。

import numpy as np
import math

1. Numpy库

1.1 求以e、2、10为底的对数

函数 功能
np.log(x) 以e为底的对数(自然对数)
np.log10(x) 以10为底的对数
np.log2(x) 以2为底的对数
np.log1p(x) 等价于:np.log(x + 1)

备注:np.expm1(x) 等价于 np.exp(x) - 1,也是np.log1p(x)的逆运算。

1.2 求以任意数为底的对数

在Numpy中以任意数为底的对数需要用到换底公式:

Python中求对数方法总结

例如:以3为底,5的对数

Python中求对数方法总结

代码写出来为:

np.log(5)/np.log(3)

2. Math库

2.1 求以e、2、10为底的对数

与Numpy中的用法完全一样

函数 功能
math.log(x) 以e为底的对数(自然对数)
math.log10(x) 以10为底的对数
math.log2(x) 以2为底的对数
math.log1p(x) 等价于:math.log(x + 1),用于数据平滑

备注:math.expm1(x) 等价于 math.exp(x) - 1,也是math.log1p(x)的逆运算。

2.2 求以任意数为底的对数

math.log(x, n)

其中n为底数

3. 区别

为什么有了一个Math库中求对数的方法,还要在Numpy库中内置一模一样的函数?

原因:

在math库中,函数的输入x只能为单独一个数。

math.log10(100)
[out]: 2.0

如果输入为一个列表:

math.log10([10, 100])   # 会报错
TypeError: must be real number, not list

在Numpy库中,函数的输入x不仅可以为单独一个数,还可以是一个列表,一个Numpy数组。

np.log10([10, 100])
[out]:
array([1., 2.])

np.log10([[10, 100], [1000, 10000]])
[out]:
array([[1., 2.],
    [3., 4.]])

其结果为Numpy数组。也就是说Numpy中的函数不需要循环就可以实现每个元素的批量处理。 

到此这篇关于Python中求对数方法总结的文章就介绍到这了,更多相关Python 求对数 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python入门篇之数字
Oct 20 Python
完美解决安装完tensorflow后pip无法使用的问题
Jun 11 Python
Python3实现腾讯云OCR识别
Nov 27 Python
Python 常用模块 re 使用方法详解
Jun 06 Python
django基于存储在前端的token用户认证解析
Aug 06 Python
python实现简单井字棋小游戏
Mar 05 Python
django model通过字典更新数据实例
Apr 01 Python
更新升级python和pip版本后不生效的问题解决
Apr 17 Python
matplotlib运行时配置(Runtime Configuration,rc)参数rcParams解析
Jan 05 Python
requests在python中发送请求的实例讲解
Feb 17 Python
用Python写一个简易版弹球游戏
Apr 13 Python
2021年最新用于图像处理的Python库总结
Jun 15 Python
Python标准库shutil模块使用方法解析
Mar 10 #Python
python实现提取COCO,VOC数据集中特定的类
Mar 10 #Python
Python 生成VOC格式的标签实例
Mar 10 #Python
python3用urllib抓取贴吧邮箱和QQ实例
Mar 10 #Python
python目标检测给图画框,bbox画到图上并保存案例
Mar 10 #Python
python opencv 检测移动物体并截图保存实例
Mar 10 #Python
Python标准库json模块和pickle模块使用详解
Mar 10 #Python
You might like
PHP5中Cookie与 Session使用详解
2013/04/30 PHP
纯PHP生成的一个树叶图片画图例子
2014/04/16 PHP
PHP使用CURL实现对带有验证码的网站进行模拟登录的方法
2014/07/23 PHP
laravel ORM 只开启created_at的几种方法总结
2018/01/29 PHP
PHP htmlentities()函数用法讲解
2019/02/25 PHP
利用javascript的面向对象的特性实现限制试用期
2011/08/04 Javascript
Jquery实现网页跳转或用命令打开指定网页的解决方法
2013/07/09 Javascript
js监听滚动条滚动事件使得某个标签内容始终位于同一位置
2014/01/24 Javascript
js定时器(执行一次、重复执行)
2014/03/07 Javascript
jQuery产品间断向下滚动效果核心代码
2014/05/08 Javascript
JavaScript字符串对象toLowerCase方法入门实例(用于把字母转换为小写)
2014/10/17 Javascript
jQuery插件开发精品教程让你的jQuery提升一个台阶
2016/01/27 Javascript
js实现简单的省市县三级联动效果实例
2016/02/18 Javascript
window.close(); 关闭浏览器窗口js代码的总结介绍
2016/07/14 Javascript
JavaScript实现复制文章自动添加版权
2016/08/02 Javascript
JavaScript实战之菜单特效
2016/08/16 Javascript
微信小程序动态添加view组件的实例代码
2019/05/23 Javascript
vue-cli3项目展示本地Markdown文件的方法
2019/06/07 Javascript
微信小程序使用Vant Weapp组件库的方法步骤
2019/08/01 Javascript
python中精确输出JSON浮点数的方法
2014/04/18 Python
python表格存取的方法
2018/03/07 Python
pandas数值计算与排序方法
2018/04/12 Python
Django实现学员管理系统
2019/02/26 Python
python实点云分割k-means(sklearn)详解
2020/05/28 Python
Python configparser模块封装及构造配置文件
2020/08/07 Python
filter使用python3代码进行迭代元素的实例详解
2020/12/03 Python
通过css3的filter滤镜改变png图片的颜色的示例代码
2020/05/06 HTML / CSS
全球最大的中文旅行网站:去哪儿网
2017/11/16 全球购物
NYX Professional Makeup官方网站:专业彩妆和美容产品
2019/10/29 全球购物
中专生自我鉴定书范文
2013/12/28 职场文书
环保建议书400字
2014/05/14 职场文书
个人批评与自我批评总结
2014/10/17 职场文书
同学聚会邀请函
2015/01/30 职场文书
小学同学聚会感言
2015/07/30 职场文书
八年级历史教学反思
2016/02/19 职场文书
2016年助残日旅游活动总结
2016/04/01 职场文书