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

基础数学

    • 1.1 基础数学实验介绍
      • 1.1.1 内容介绍
      • 1.1.2 框架介绍
    • 1.2 基础数学实现
      • 1.2.1 ceil实现
      • 1.2.2 floor实现
      • 1.2.3 cos实现
      • 1.2.4 tan实现
      • 1.2.5 degrees实现
      • 1.2.6 exp实现
      • 1.2.7 fabs实现
      • 1.2.8 factorial实现
      • 1.2.9 fsum实现
      • 1.2.10 fmod实现
      • 1.2.11 log实现
      • 1.2.12 sqrt实现
      • 1.2.13 pi实现
      • 1.2.14 pow实现
      • 1.2.15 trunc实现

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

解释:在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)

结果输出:

0.5773502691896257

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

举例:

math.tan(math.pi/4)

结果输出:

0.9999999999999999

1.2.5 degrees实现

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.0

1.2.11 log实现

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

代码输入:

math.log(10)

结果输出:

2.302585092994046

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

举例:

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

结果数据:

2.0

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/146284.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java虚拟机运行时数据区结构详解

Java虚拟机运行时数据区结构如图所示 程序计数器 程序计数器(Program Counter Register)是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。 多线程切换时,为了能恢复到正确的执行位置,每条线程…

基于DE10-Standard Cyclone V SoC FPGA学习---开发板简介

基于DE10-Standard Cyclone V SoC FPGA学习---开发板简介 简介产品规格基于 ARM 的 HPS配置与调试存储器件通讯连接头显示器音频视频输入模数转换器开关、按钮、指示器传感器电源 DE10-Standard 开发板系统框图Connect HTG 组件配置设计资源其他资源 简介 开发板资料 见 DE10-…

【漏洞复现】NUUO摄像头存在远程命令执行漏洞

漏洞描述 NUUO摄像头是中国台湾NUUO公司旗下的一款网络视频记录器,该设备存在远程命令执行漏洞,攻击者可利用该漏洞执行任意命令,进而获取服务器的权限。 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律&…

业务:业务系统检查项参考

名录明细云平台摸底1.原有云平台体系:VMware、openstack、ovirt、k8s、docker、混合云系列及版本 2.原有云平台规模,物理机数量、虚拟机数量、迁移业务系统所占配额 3.待补充系统摸底 (适用于物理主机)每一台虚拟机或物理机: 1.系统全局参数…

Vellum —— Constraint 约束

目录 Stretch Bend Pin Drag 解算器对DOP外节点的约束属性,只会读取起始帧的值; Stretch 保持点间的初始距离; Stiffness 越高的stiffness,就需要越多的迭代来收敛,如constraint iterations或substeps(子步会更好)…

【Linux】:进程间通信

进程间通信 一.基本概念二.简单的通信-管道1.建立通信信道2.通信接口 一.基本概念 是什么 两个或多个进程实现数据层面的交互。 因为进程独立性的存在,导致进程间的通信成本比较高。 为什么 因为我们有多进程协同的需求。 怎么办 a.进程间通信的本质:必须让不…

无线物理层安全大作业

这个标题很帅 Beamforming Optimization for Physical Layer Security in MISO Wireless NetworksProblem Stateme![在这里插入图片描述](https://img-blog.csdnimg.cn/58ebb0df787c4e23b0c7be4189ebc322.png) Beamforming Optimization for Physical Layer Security in MISO W…

Android 屏幕适配

目录 一、为什么要适配 二、几个重要的概念 2.1 屏幕尺寸 2.2 屏幕分辨率 2.3 屏幕像素密度 2.4 屏幕尺寸、分辨率、像素密度三者关系 三、常用单位 3.1 密度无关像素(dp) 3.2 独立比例像素(sp) 3.3 dp与px的转换 四、解决方案 4.1 今日头条…

python_主动调用其他类的成员

# 主动调用其他类的成员 # 方式一: class Base(object):def f1(self):print("5个功能") class Foo(object):def f1(self):print("3个功能")# Base.实例方法(自己传self),与继承无关Base.f1(self)obj Foo() obj.f1()print("#"*20)# 方式二:按照类…

Netty+SpringBoot 打造一个 TCP 长连接通讯方案

项目背景 最近公司某物联网项目需要使用socket长连接进行消息通讯,捣鼓了一版代码上线,结果BUG不断,本猿寝食难安,于是求助度娘,数日未眠项目终于平稳运行了,本着开源共享的精神,本猿把项目代码…

【139.单词拆分】

目录 一、题目解析二、算法原理三、代码实现 一、题目解析 二、算法原理 三、代码实现 class Solution { public:bool wordBreak(string s, vector<string>& wordDict) {int n s.size();unordered_set<string> hash;for (auto x : wordDict) hash.insert(x);…

HDU1276:士兵队列训练问题 ← STL queue

【题目来源】http://acm.hdu.edu.cn/showproblem.php?pid1276【题目描述】 某部队进行新兵队列训练&#xff0c;将新兵从一开始按顺序依次编号&#xff0c;并排成一行横队&#xff0c;训练的规则如下&#xff1a;从头开始一至二报数&#xff0c;凡报到二的出列&#xff0c;剩下…

【spring】ApplicationContext的实现

目录 一、ClassPathXmlApplicationContext1.1 说明1.2 代码示例1.3 截图示例 二、FileSystemXmlApplicationContext2.1 说明2.2 代码示例2.3 加载xml的bean定义示例 三、AnnotationConfigApplicationContext3.1 说明3.2 代码示例3.3 截图示例 四、AnnotationConfigServletWebSe…

flutter web 中嵌入一个html

介绍 flutter web 支持使用 HtmlElementView嵌入html import dart:html; import dart:ui as ui; import package:flutter/cupertino.dart;class WebWidget extends StatelessWidget {const WebWidget({super.key});overrideWidget build(BuildContext context) {DivElement fr…

第77题. 组合

原题链接&#xff1a;第77题. 组合 全代码&#xff1a; class Solution { private:vector<vector<int>> result; // 存放符合条件结果的集合vector<int> path; // 用来存放符合条件结果void backtracking(int n, int k, int startIndex) {if (path.size() …

geoserver的ECQL查询

ECQL Reference — GeoServer 2.24.x User Manual CQL and ECQL — GeoServer 2.24.x User Manual ECQL是CQL的扩展&#xff0c;类似sql查询&#xff0c;比ogc的xml格式简单&#xff0c;可以应用在wfs和wms查询上。 通过可视化页面查看过滤效果&#xff0c;默认视图 主键不会…

STM32GPIO——上拉下拉电阻、施密特触发器、P-MOS/N-MOS管

图1和图2 两种版本的GPIO基本结构图 如上两个图所示&#xff0c;标号2都为上拉、下拉电阻部分&#xff0c;阻值约为30k~50k欧&#xff0c;通过对应开关进行控制&#xff0c;开关由寄存器控制。 当引脚外部的器件没有干扰引脚的电压时&#xff0c;即没有外部的上、下拉电压&a…

指针传2(续集)

近期的天气是真的冷啊&#xff0c;老铁们一定要照顾好自己呀&#xff0c;注意防寒保暖&#xff0c;没有你们我怎么活啊&#xff01; 上次的指针2的末尾&#xff0c;给大家分享了两个有趣的代码&#xff0c;今天就先来讲一讲那两个代码&#xff1a; 两个有趣的代码&#xff1a;…

数据结构02附录01:顺序表考研习题[C++]

图源&#xff1a;文心一言 考研笔记整理~&#x1f95d;&#x1f95d; 之前的博文链接在此&#xff1a;数据结构02&#xff1a;线性表[顺序表链表]_线性链表-CSDN博客~&#x1f95d;&#x1f95d; 本篇作为线性表的代码补充&#xff0c;每道题提供了优解和暴力解算法&#xf…

uni-app开发微信小程序 vue3写法添加pinia

说明 使用uni-app开发&#xff0c;选择vue3语法&#xff0c;开发工具是HBliuderX。虽然内置有vuex&#xff0c;但是个人还是喜欢用Pinia&#xff0c;所以就添加进去了。 Pinia官网连接 添加步骤 第一步&#xff1a; 在项目根目录下执行命令&#xff1a; npm install pinia …