numpy中的log和ln函数解读

 更新时间:2022年11月03日 10:18:57   作者:勤奋的大熊猫  
这篇文章主要介绍了numpy中的log和ln函数解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

numpy的log和ln函数

每次当我想用python实现ln函数时,下意识的就会输入错误的函数代码,这里特来记录一下关于numpy中的ln和log函数正确的调用方式。

ln函数

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函数。

log函数

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函数值。

numpy的部分通用函数

1.数组算术运算符

运算符对应的通用函数描述
+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])

2.绝对值通用函数np.absolute()

也可以通过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])

3.三角函数

  • np.sin()
  • np.cos()
  • np.tan()

反三角同理

4.指数和对数

表达函数
e^xnp.exp(x)
2^xnp.exp2(x)
3^xnp.power(3, x)
ln(x)np.log(x)
log2(x)np.log2(x)
log10(x)np.log10(x)
exp(x)-1np.expm1(x)
log(1+x)np.log1p(x)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python中的字符串类型基本知识学习教程

    Python中的字符串类型基本知识学习教程

    这篇文章主要介绍了Python中的字符串类型基本知识学习教程,包括转义符和字符串拼接以及原始字符串等基础知识讲解,需要的朋友可以参考下
    2016-02-02
  • 详解如何用Python实现感知器算法

    详解如何用Python实现感知器算法

    今天给大家带来的是关于Python的相关知识,文章围绕着如何用Python实现感知器算法展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • Anaconda安装时默认python版本改成其他版本的两种方式

    Anaconda安装时默认python版本改成其他版本的两种方式

    这篇文章主要给大家介绍了关于Anaconda安装时默认python版本改成其他版本的两种方式,anaconda是一个非常好用的python发行版本,其中包含了大部分常用的库,需要的朋友可以参考下
    2023-10-10
  • Python 爬取淘宝商品信息栏目的实现

    Python 爬取淘宝商品信息栏目的实现

    这篇文章主要介绍了Python 爬取淘宝商品信息栏目的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • 使用Python代码进行PowerPoint演示文稿的合并与拆分

    使用Python代码进行PowerPoint演示文稿的合并与拆分

    多个PowerPoint演示文稿的处理可能会成为非常麻烦的工作,有时需要将多个演示文稿合并为一个演示文稿,从而不用在演示时重复打开演示文稿,本文我们可以使用Python代码来快速、准确的执行PowerPoint演示文稿的合并于拆分操作,需要的朋友可以参考下
    2024-03-03
  • 利用信号如何监控Django模型对象字段值的变化详解

    利用信号如何监控Django模型对象字段值的变化详解

    这篇文章主要给大家介绍了关于利用信号如何监控Django模型对象字段值变化的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-11-11
  • python浅拷贝与深拷贝使用方法详解

    python浅拷贝与深拷贝使用方法详解

    浅拷贝,指的是重新分配一块内存,创建一个新的对象,但里面的元素是原对象中各个子对象的引用。深拷贝,是指重新分配一块内存,创建一个新的对象,并且将原对象中的元素,以递归的方式,通过创建新的子对象拷贝到新对象中。因此,新对象和原对象没有任何关联
    2022-11-11
  • Python的string模块中的Template类字符串模板用法

    Python的string模块中的Template类字符串模板用法

    通过string.Template我们可以为Python定制字符串的替换标准,这里我们就来通过示例解析Python的string模块中的Template类字符串模板用法:
    2016-06-06
  • python发送邮件示例(支持中文邮件标题)

    python发送邮件示例(支持中文邮件标题)

    python发送中文邮件示例,支持中文邮件标题和中文邮件内容。支持多附件。根据用户名推测邮件服务器提供商
    2014-02-02
  • Python OpenCV超详细讲解图像堆叠的实现

    Python OpenCV超详细讲解图像堆叠的实现

    OpenCV用C++语言编写,它具有C ++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac OS,OpenCV主要倾向于实时视觉应用,并在可用时利用MMX和SSE指令,本篇文章带你通过OpenCV实现图像堆叠
    2022-04-04

最新评论