python numpy教程:自然对数ln的使用详解
Admin 2022-12-21 群英技术资讯 1514 次浏览
今天这篇给大家分享的知识是“python numpy教程:自然对数ln的使用详解”,小编觉得挺不错的,对大家学习或是工作可能会有所帮助,对此分享发大家做个参考,希望这篇“python numpy教程:自然对数ln的使用详解”文章能帮助大家解决问题。每次当我想用python实现ln函数时,下意识的就会输入错误的函数代码,这里特来记录一下关于numpy中的ln和log函数正确的调用方式。
import numpy as np
class NumpyStudy:
def lnFunction(self):
const = np.e
result = np.log(const)
print("函数ln(e)的值为:")
print(result)
if __name__ == "__main__":
main = NumpyStudy()
main.lnFunction()
"""
函数ln(e)的值为:
1.0
"""
我们可以看到得到的值为1,说明在python中,np.log()指代的便是数学中使用的ln函数。
import numpy as np
class NumpyStudy:
def logFunction(self):
const = 100
result = np.log10(const)
print("函数ln(e)的值为:")
print(result)
if __name__ == "__main__":
main = NumpyStudy()
main.logFunction()
"""
函数ln(e)的值为:
2.0
"""
我们可以看到得到的值为2,说明在python中,np.log10()指代的便是数学中使用的lg函数。
前几天看到有一个小伙伴留言说,既然以10和以自然数e为底数的目前都有了,那么以其他数比如2,3,4等等为底数的log函数该怎么办呢?
这里我们需要用到一下数学上的小技巧—换底公式进行一下变换。例如:我们想要求出log以2为底16的值。

import numpy as np
class NumpyStudy:
def lnFunction(self):
result = np.log(16) / np.log(2)
result1 = np.log10(16) / np.log10(2)
print("函数ln(e)的值为:")
print(result)
print(result1)
if __name__ == "__main__":
main = NumpyStudy()
main.lnFunction()
"""
函数ln(e)的值为:
4.0
4.0
"""
可以看到我们最后成功地获取到了正确的结果4.0。用这种方法我们可以获取到以任意数为底数的log函数值。
| 运算符 | 对应的通用函数 | 描述 |
|---|---|---|
| + | np.add | 加法运算(即1+1=2) |
| - | np.substract | 减法运算(即3-2=1) |
| - | np.negative | 负数运算(即-2) |
| * | Nnp.multiply | 乘法运算(即2*3=6) |
| / | np.divide | 除法运算(即3/2=1.5) |
| // | np.floor_divide | 向下整除运算(floor division,即3//2=1) |
| ** | np.power | 指数运算(即2 ** 3=8) |
| % | np.mod | 模/余数(即9%4=1) |
这些都是一元通用函数,写代码时可直接用左栏的运算符代替
x=np.arrange(4) #array([0, 1, 2, 3]) x + 2 #array([2, 3, 4, 5]) np.add(x,2) #array([2, 3, 4, 5])
也可以通过np.abs()访问
其对复数的运算是求模
x=np.array([-2, -1, 0, 1, 2]) abs(x) #array([2, 1, 0, 1, 2]) np.absolute(x) #array([2, 1, 0, 1, 2])
np.sin()np.cos()np.tan()反三角同理
| 表达 | 函数 |
|---|---|
| e^x | np.exp(x) |
| 2^x | np.exp2(x) |
| 3^x | np.power(3, x) |
| ln(x) | np.log(x) |
| log2(x) | np.log2(x) |
| log10(x) | np.log10(x) |
| exp(x)-1 | np.expm1(x) |
| log(1+x) | np.log1p(x) |
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要为大家详细介绍了Python利用Pygame模块实现简单打地鼠游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
一直在思索实现一个透明的窗体,然后可以基于这个窗体可以开发出各种好玩的应用(如桌面运动的小人、运动的小球、截图、录制GIF等等),今天无意间居然让我把其中一个最核心的技术难关突破了,我非常高兴,也借这个机会跟大家分享一下。
这篇文章主要介绍了Python利用numpy实现三层神经网络的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了python 解决微分方程的操作(数值解法),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
这篇文章主要介绍了Python中模块(Module)和包(Package)的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008