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 ceil 实现

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

代码输入:

math.ceil(4.01)

结果输出:

5

代码输入:

math.ceil(4.99)

结果输出:

5

1.2.2 floor 实现

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

代码输入:

math.floor(4.1)

结果输出:

4

代码输入:

math.floor(4.999)

结果输出:

4

1.2.3 cos 实现

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

代码输入:

math.cos(math.pi/4)

结果输出:

0.7071067811865476

代码输入:

math.cos(math.pi/3)

结果输出:

0.5000000000000001

1.2.4 tan 实现

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

代码输入:

np.tan(math.pi/6)

结果输出:

0.5773502691896257

1.2.5 degress 实现

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

代码输入:

math.degrees(math.pi/4)

结果输出:

45.0

代码输入:

math.degrees(math.pi)

结果输出:

180.0

1.2.6 exp 实现

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

代码输入:

math.exp(1)

结果输出:

2.718281828459045

1.2.7 fabs 实现

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

代码输入:

math.fabs(-0.003)

结果输出:

0.003

1.2.8 factorial 实现

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

代码输入:

math.factorial(3)

结果输出:

6

1.2.9 fsum 实现

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

代码输入:

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

结果输出:

10

1.2.10 fmod 实现

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

代码输入:

math.fmod(20,3)

结果输出:

2.302585092994046

1.2.11 log 实现

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

代码输入:

math.log(10)

结果输出:

2.302585092994046

1.2.12 sqrt 实现

sqrt(x) 求 x 的平方根。

代码输入:

math.sqrt(100)

代码输出:

10.0

1.2.13 pi 实现

pi 数字常量,圆周率。

代码输入:

math.pi

结果输出:

3.141592653589793

1.2.14 pow 实现

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

代码输入:

math.pow(3,4)

结果输出:

81.0

1.2.15 trunc 实现

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

代码输入:

math.trunc(6.789)

结果输出:

6