基础数学
-
- [1.1 基础数学实验介绍](#1.1 基础数学实验介绍)
-
- [1.1.1 内容介绍](#1.1.1 内容介绍)
- [1.1.2 框架介绍](#1.1.2 框架介绍)
- [1.2 基础数学实现](#1.2 基础数学实现)
-
- [1.2.1 ceil实现](#1.2.1 ceil实现)
- [1.2.2 floor实现](#1.2.2 floor实现)
- [1.2.3 cos实现](#1.2.3 cos实现)
- [1.2.4 tan实现](#1.2.4 tan实现)
- [1.2.5 degrees实现](#1.2.5 degrees实现)
- [1.2.6 exp实现](#1.2.6 exp实现)
- [1.2.7 fabs实现](#1.2.7 fabs实现)
- [1.2.8 factorial实现](#1.2.8 factorial实现)
- [1.2.9 fsum实现](#1.2.9 fsum实现)
- [1.2.10 fmod实现](#1.2.10 fmod实现)
- [1.2.11 log实现](#1.2.11 log实现)
- [1.2.12 sqrt实现](#1.2.12 sqrt实现)
- [1.2.13 pi实现](#1.2.13 pi实现)
- [1.2.14 pow实现](#1.2.14 pow实现)
- [1.2.15 trunc实现](#1.2.15 trunc实现)
1.1 基础数学实验介绍
1.1.1 内容介绍
基础数学知识在数据挖掘领域有着大量的应用,尤其是在算法设计和数值处理方面。本章节的主要目的就是基于Python语言和相应的基础数学模块,实现一些常用的数学基础算法,为进入数据挖掘的学习提供基础支持。
1.1.2 框架介绍
本章节使用到的框架主要包括math库,numpy库和scipy库。math库是Python的标准库,提供一些常用的数学函数;numpy库是Python的一个数值计算拓展库,主要用于处理线性代数,随机数生成,傅里叶变换等问题;scipy库主要用于统计,优化,插值,积分等问题的处理。
1.2 基础数学实现
导入相应库:
python
import math
import numpy as np
1.2.1 ceil实现
ceil(x)
取大于等于x的最小的整数值,如果x是一个整数,则返回自身。
代码输入:
python
math.ceil(4.01)
结果输出:
python
5
代码输入:
python
math.ceil(4.99)
结果输出:
python
5
1.2.2 floor实现
floor(x)
取小于等于x的最大的整数值,如果x是一个整数,则返回自身。
代码输入:
python
math.floor(4.1)
结果输出:
python
4
代码输入:
python
math.floor(4.999)
结果输出:
python
4
1.2.3 cos实现
cos(x)
求x的余弦,x必须是弧度(math.pi/4表示弧度,转换成角度为45度)。
代码输入:
python
math.cos(math.pi/4)
结果输出:
python
0.7071067811865476
代码输入:
python
math.cos(math.pi/3)
结果输出:
python
0.5000000000000001
解释:在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为弧度)的正切值。
代码输入:
python
np.tan(math.pi/6)
结果输出:
python
0.5773502691896257
注意:上述代码是使用Numpy库,NumPy库和Python的math模块在处理数学函数时使用不同的算法和精度。NumPy库使用基于C语言的底层实现,提供高精度的数学计算。而Python的math模块使用标准的浮点数实现,精度可能较低。
举例:
python
math.tan(math.pi/4)
结果输出:
python
0.9999999999999999
1.2.5 degrees实现
degrees(x)
把x从弧度转换成角度。
代码输入:
python
math.degrees(math.pi/4)
结果输出:
python
45.0
代码输入:
python
math.degrees(math.pi)
结果输出:
python
180.0
1.2.6 exp实现
exp(x)
返回math.e,也就是2.71828的x次方。
代码输入:
python
math.exp(1)
结果输出:
python
2.718281828459045
1.2.7 fabs实现
fabs(x)
返回x的绝对值。
代码输入:
python
math.fabs(-0.003)
结果输出:
python
0.003
1.2.8 factorial实现
factorial(x)
取x的阶乘的值。
代码输入:
python
math.factorial(3)
结果输出:
python
6
1.2.9 fsum实现
fsum(iterable)
对迭代器里的每个元素进行求和操作。
代码输入:
python
math.fsum([1,2,3,4])
结果输出:
python
10
1.2.10 fmod实现
fmod(x, y)
得到x/y的余数,其值是一个浮点数。
代码输入:
python
math.fmod(20,3)
结果输出:
python
2.0
1.2.11 log实现
log([x, base])
返回x的自然对数,默认以e为底数,base参数给定时,按照给定的base返回x的对数,计算式为: log(x)/log(base)
。
代码输入:
python
math.log(10)
结果输出:
python
2.302585092994046
解释:math.log(10)表示以自然对数为底的10的对数。在数学中,自然对数的底数是常数e,约等于2.71828。因此,math.log(10)的结果约为2.302585092994046。这表示以自然对数为底的10的对数约为2.302585092994046。
举例:
python
import math
math.log(math.exp(2))
结果数据:
python
2.0
1.2.12 sqrt实现
sqrt(x)
求x的平方根。
代码输入:
python
math.sqrt(100)
结果输出:
python
10.0
1.2.13 pi实现
pi
数字常量,圆周率。
代码输入:
python
math.pi
结果输出:
python
3.141592653589793
1.2.14 pow实现
pow(x, y)
返回x的y次方,即 x**y
。
代码输入:
python
math.pow(3,4)
结果输出:
python
81.0
1.2.15 trunc实现
trunc(x:Real)
返回x的整数部分。
代码输入:
python
math.trunc(6.789)
结果输出:
python
6