• 大数据HCIE成神之路之数学(1)——基础数学


    1.1 基础数学实验介绍

    1.1.1 内容介绍

    基础数学知识在数据挖掘领域有着大量的应用,尤其是在算法设计和数值处理方面。本章节的主要目的就是基于Python语言和相应的基础数学模块,实现一些常用的数学基础算法,为进入数据挖掘的学习提供基础支持。

    1.1.2 框架介绍

    本章节使用到的框架主要包括math库,numpy库和scipy库。math库是Python的标准库,提供一些常用的数学函数;numpy库是Python的一个数值计算拓展库,主要用于处理线性代数,随机数生成,傅里叶变换等问题;scipy库主要用于统计,优化,插值,积分等问题的处理。

    1.2 基础数学实现

    导入相应库:

    import math 
    import numpy as np
    
    • 1
    • 2

    1.2.1 ceil实现

    ceil(x) 取大于等于x的最小的整数值,如果x是一个整数,则返回自身。

    代码输入:

    math.ceil(4.01)
    
    • 1

    结果输出:

    5
    
    • 1

    代码输入:

    math.ceil(4.99)
    
    • 1

    结果输出:

    5
    
    • 1

    1.2.2 floor实现

    floor(x) 取小于等于x的最大的整数值,如果x是一个整数,则返回自身。

    代码输入:

    math.floor(4.1)
    
    • 1

    结果输出:

    4
    
    • 1

    代码输入:

    math.floor(4.999)
    
    • 1

    结果输出:

    4
    
    • 1

    1.2.3 cos实现

    cos(x) 求x的余弦,x必须是弧度(math.pi/4表示弧度,转换成角度为45度)。

    代码输入:

    math.cos(math.pi/4)
    
    • 1

    结果输出:

    0.7071067811865476
    
    • 1

    代码输入:

    math.cos(math.pi/3)
    
    • 1

    结果输出:

    0.5000000000000001
    
    • 1

    解释:在Python中,math.cos()函数用于计算给定角度的余弦值。math.pi是一个常量,表示圆周率π,其值约为3.141592653589793。因此,math.pi/3表示π的1/3倍,即约为1.0471975511965979弧度。因为在计算机中进行浮点数运算时存在舍入误差,所以结果可能会略微偏差。在这种情况下,math.cos(math.pi/3)的近似值为0.5。

    1.2.4 tan实现

    tan(x) 返回x(x为弧度)的正切值。

    代码输入:

    np.tan(math.pi/6)
    
    • 1

    结果输出:

    0.5773502691896257
    
    • 1

    注意:上述代码是使用Numpy库,NumPy库和Python的math模块在处理数学函数时使用不同的算法和精度。NumPy库使用基于C语言的底层实现,提供高精度的数学计算。而Python的math模块使用标准的浮点数实现,精度可能较低。

    举例:

    math.tan(math.pi/4)
    
    • 1

    结果输出:

    0.9999999999999999
    
    • 1

    1.2.5 degrees实现

    degrees(x) 把x从弧度转换成角度。

    代码输入:

    math.degrees(math.pi/4)
    
    • 1

    结果输出:

    45.0
    
    • 1

    代码输入:

    math.degrees(math.pi)
    
    • 1

    结果输出:

    180.0
    
    • 1

    1.2.6 exp实现

    exp(x) 返回math.e,也就是2.71828的x次方。

    代码输入:

    math.exp(1)
    
    • 1

    结果输出:

    2.718281828459045
    
    • 1

    1.2.7 fabs实现

    fabs(x) 返回x的绝对值。

    代码输入:

    math.fabs(-0.003)
    
    • 1

    结果输出:

    0.003
    
    • 1

    1.2.8 factorial实现

    factorial(x) 取x的阶乘的值。

    代码输入:

    math.factorial(3)
    
    • 1

    结果输出:

    6
    
    • 1

    1.2.9 fsum实现

    fsum(iterable) 对迭代器里的每个元素进行求和操作。

    代码输入:

    math.fsum([1,2,3,4])
    
    • 1

    结果输出:

    10
    
    • 1

    1.2.10 fmod实现

    fmod(x, y) 得到x/y的余数,其值是一个浮点数。

    代码输入:

    math.fmod(20,3)
    
    • 1

    结果输出:

    2.0
    
    • 1

    1.2.11 log实现

    log([x, base]) 返回x的自然对数,默认以e为底数,base参数给定时,按照给定的base返回x的对数,计算式为: log(x)/log(base)

    代码输入:

    math.log(10)
    
    • 1

    结果输出:

    2.302585092994046
    
    • 1

    解释:math.log(10)表示以自然对数为底的10的对数。在数学中,自然对数的底数是常数e,约等于2.71828。因此,math.log(10)的结果约为2.302585092994046。这表示以自然对数为底的10的对数约为2.302585092994046。

    举例:

    import math
    math.log(math.exp(2))
    
    • 1
    • 2

    结果数据:

    2.0
    
    • 1

    1.2.12 sqrt实现

    sqrt(x) 求x的平方根。

    代码输入:

    math.sqrt(100)
    
    • 1

    结果输出:

    10.0
    
    • 1

    1.2.13 pi实现

    pi 数字常量,圆周率。

    代码输入:

    math.pi
    
    • 1

    结果输出:

    3.141592653589793
    
    • 1

    1.2.14 pow实现

    pow(x, y) 返回x的y次方,即 x**y

    代码输入:

    math.pow(3,4)
    
    • 1

    结果输出:

    81.0
    
    • 1

    1.2.15 trunc实现

    trunc(x:Real) 返回x的整数部分。

    代码输入:

    math.trunc(6.789)
    
    • 1

    结果输出:

    6
    
    • 1
  • 相关阅读:
    【AspectJX】Android 中快速集成使用一款 AOP 框架并附加数据埋点解决方案实现
    Matlab随机数的产生
    MyBatis是什么呢?
    Python和Matplotlib电磁一维二维三维模拟
    iOS 17更新失败或无法更新怎么办?8 个解决方法快速解决!
    C语言——通讯录管理系统
    c++编程实例
    Pr:导出设置之基本视频设置
    MySQL基础篇【第五篇】| union、limit、DDL、DML、约束
    青龙面板-快手极速版(每天3块脚本)
  • 原文地址:https://blog.csdn.net/shaock2018/article/details/134471782