python numpy常用的数学和统计函数
numpy模块的核心就是基于数组的运算,相比于列表和其他数据结构,数组的运算效率是最高的。在统计分析和挖掘过程中,经常会使用到numpy模块的函数,以下是常用的数学函数和统计函数:

常数p就是圆周率 3.1415926...
常数e :2.71828...
np.fabs(arr) 例如:np.fabs(-3) 输出:3.0
np.ceil(arr) 例如:np.ceil(3.2) 输出:4.0 并非四舍五入操作
np.floor(arr) 类似ceil 向下取整
np.round(arr) 四舍五入 例如:np.round(3.4) 输入:3.0 输出的还是浮点型数据,并非整型
np.fmod(arr1,arr2) 求余,对arr1,arr2并没有要求要整数,如np.fmod(3.9,3.8) 结果是:0.1000000

np.modf(arrj) 返回数组元素的小数部分和整数部分 如:arr1 = np.array([3.21,4.1,5.2]) print(np.modf(arr1)) 输出如下:
(array([0.31, 0.1 , 0.2 ]), array([2., 4., 5.]))
np.sqrt(arr) 计算各元素的算数平方根,这个元素可以是具体的数值,也可以是数组,例如:print(np.sqrt(arr1)) out:
[1.51986842 2.02484567 2.28035085]
np.square(arr) 用法同np.sqrt(arr) 计算各元素的平方值
np.power(arr,α) 表示arr的α次方 也就是说 其实 np.power 可以包括 aqrt square exp
如:
import numpy as np
arr1 = np.array([2.31,4.1,5.2])
print(np.power(arr1,0.5))
print(np.sqrt(arr1))
print(np.exp(arr1))
print(np.power(np.e,arr1))
print(np.power(arr1,2))
print(np.square(arr1))
out:
[1.51986842 2.02484567 2.28035085]
[1.51986842 2.02484567 2.28035085]
[ 10.07442466 60.3402876 181.27224188]
[ 10.07442466 60.3402876 181.27224188]
[ 5.3361 16.81 27.04 ]
[ 5.3361 16.81 27.04 ]
常用统计函数:


统计函数绝大部分都是有axis参数,该参数的目的就是在统计数组元素时需要按照不同的轴方向计算,如果axis = 1,计算各行的统计值,axis = 0,计算各列
的统计值。
例如:
import numpy as np
arr2 = np.arange(9).reshape(3,3)
print(np.sum(arr2,axis = 0)) #统计二维数组垂直方向各项的值的和
print(np.sum(arr2,axis = 1)) #统计二维数组横向方向各项的值的和
out:
[ 9 12 15]
[ 3 12 21]
示例2:
import numpy as np
arr2 = np.arange(9).reshape(3,3)
print('输入arr2用于对比:\n',arr2)
print('....分割线....')
print(np.min(arr2,axis = 0))
print(np.max(arr2,axis = 1))
print(np.mean(arr2,axis = 0))
print(np.median(arr2,axis = 1))
print(np.sum(arr2,axis =0))
print(np.std(arr2,axis =0))
print(np.var(arr2,axis=0)) #方差 也就是差的平方了
print(np.cumsum(arr2,axis = 0)) #累计和 可以通过结果的值 如:3,5,7的得来是 0+3 1+4 2+5
print(np.cumprod(arr2,axis =0)) #跟累加处理方式类似,一个个剩下来
print(np.argmax(arr2,axis = 0 )) #这里反馈的是按照轴方向返回的最大值的位置,并不是最大值
输入arr2用于对比:
[[0 1 2]
[3 4 5]
[6 7 8]]
....分割线....
[0 1 2]
[2 5 8]
[3. 4. 5.]
[1. 4. 7.]
[ 9 12 15]
[2.44948974 2.44948974 2.44948974]
[6. 6. 6.]
[[ 0 1 2]
[ 3 5 7]
[ 9 12 15]]
[[ 0 1 2]
[ 0 4 10]
[ 0 28 80]]
[2 2 2]
python numpy常用的数学和统计函数的更多相关文章
- 【python游戏编程之旅】第四篇---pygame中加载位图与常用的数学函数。
本系列博客介绍以python+pygame库进行小游戏的开发.有写的不对之处还望各位海涵. 在上一篇博客中,我们学习了pygame事件与设备轮询.http://www.cnblogs.com/msxh ...
- Python人工智能常用库Numpy使用入门
第一章 jupyter notebook简单教程 命令模式按键esc开启 Enter : 转入编辑模式 Shift-Enter : 运行本单元,选中下个单元 Ctrl-Enter : 运行本单元 Al ...
- Python数据分析--Numpy常用函数介绍(2)
摘要:本篇我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数.学习读写文件的方法,并尝试函数式编程和NumPy线性代数运算,来学习NumPy的常用函数. ...
- 【python游戏编程04--加载位图与常用的数学函数】
一.pygame中常用的数学函数 首先介绍两个角度和弧度转换的函数 math.degress()和math.radians()用法很简单,只要将数值传进去然后接受返回值就可以 math.cos(ang ...
- Python numpy中矩阵的用法总结
关于Python Numpy库基础知识请参考博文:https://www.cnblogs.com/wj-1314/p/9722794.html Python矩阵的基本用法 mat()函数将目标数据的类 ...
- Python NumPy学习总结
一.NumPy简介 其官网是:http://www.numpy.org/ NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Num ...
- CS231n课程笔记翻译1:Python Numpy教程
译者注:本文智能单元首发,翻译自斯坦福CS231n课程笔记Python Numpy Tutorial,由课程教师Andrej Karpathy授权进行翻译.本篇教程由杜客翻译完成,Flood Sung ...
- python numpy学习记录
numpy是一个python和矩阵相关的库,在机器学习中非常有用,记录下numpy的基本用法 numpy的数组类叫做ndarray也叫做数组,跟python标准库中的array.array不同,后者只 ...
- Python Numpy基础教程
Python Numpy基础教程 本文是一个关于Python numpy的基础学习教程,其中,Python版本为Python 3.x 什么是Numpy Numpy = Numerical + Pyth ...
随机推荐
- 在CentOS 7 上为docker配置端口转发以兼容firewall
在CentOS 7上当我们以类似下列命令将主机端口与容器端口映射时可能遇到无法访问容器服务的问题 docker run --name web_a -p 192.168.1.250:803:80 -d ...
- MacOS下Nginx安装
1. 先安装homebrew 2. 安装Nginx,终端下执行: $ brew install nginx 安装过程中会自己安装依赖: 3. 启动nginx服务 $ nginx 成功后,使用浏览器打开 ...
- mongoose.model第三个参数的问题
这个是个好问题,之前按照教程做的数据库没有问题,现在自己从新做出现了问题.还好之前有无意中接触了这个知识点,不然感觉真的很难解决. 在检查完所有东西都没错的时候(前端传给req的数据正常,与数据库相符 ...
- PHP isset() 函数
isset() 函数用于检测变量是否已设置并且非 NULL.高佣联盟 www.cgewang.com 如果已经使用 unset() 释放了一个变量之后,再通过 isset() 判断将返回 FALSE. ...
- hibernate数据库连接池,常用配置
<!-- 最大连接数 --> <property name="hibernate.c3p0.max_size">20</property> &l ...
- 【HNOI2012】永无乡 题解(并查集+线段树合并)
题目链接 给定一张含$n$个点$m$条边的无向图,每个点有一个重要指数$a_i$.有两种操作:1.在$x$和$y$之间连一条边:2.求$x$所在连通块中重要程度第$k$小的点. ----------- ...
- yum自建离线仓库
1.步骤 centOS的安装包,完整版最好--everyhing版本 解压缩 将文件夹内Packages文件导入系统 执行命令如下: 1. mv ./Packages/ /mnt/ 2. create ...
- 移动物体监控系统-sprint3移动监控主系统设计与开发
一.移动监控的原理 通过获取摄像头图像,比较前后每一帧的图像数据,从而实现移动物体监控.所有移动监控原理都是这样,只是图像帧的对比的算法不一样. 二.移动物体监控系统的实现 选择开源的移动监控软件mo ...
- 004_go语言中的常量
代码演示 package main import "fmt" import "math" const s string = "constant&quo ...
- 标星7000+,这个 Python 艺术二维码生成器厉害了!
微信二维码,相信大家也并不陌生,为了生成美观的二维码,许多用户都会利用一些二维码生成工具. 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手 ...