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常用的数学和统计函数的更多相关文章

  1. 【python游戏编程之旅】第四篇---pygame中加载位图与常用的数学函数。

    本系列博客介绍以python+pygame库进行小游戏的开发.有写的不对之处还望各位海涵. 在上一篇博客中,我们学习了pygame事件与设备轮询.http://www.cnblogs.com/msxh ...

  2. Python人工智能常用库Numpy使用入门

    第一章 jupyter notebook简单教程 命令模式按键esc开启 Enter : 转入编辑模式 Shift-Enter : 运行本单元,选中下个单元 Ctrl-Enter : 运行本单元 Al ...

  3. Python数据分析--Numpy常用函数介绍(2)

    摘要:本篇我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数.学习读写文件的方法,并尝试函数式编程和NumPy线性代数运算,来学习NumPy的常用函数. ...

  4. 【python游戏编程04--加载位图与常用的数学函数】

    一.pygame中常用的数学函数 首先介绍两个角度和弧度转换的函数 math.degress()和math.radians()用法很简单,只要将数值传进去然后接受返回值就可以 math.cos(ang ...

  5. Python numpy中矩阵的用法总结

    关于Python Numpy库基础知识请参考博文:https://www.cnblogs.com/wj-1314/p/9722794.html Python矩阵的基本用法 mat()函数将目标数据的类 ...

  6. Python NumPy学习总结

    一.NumPy简介 其官网是:http://www.numpy.org/ NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Num ...

  7. CS231n课程笔记翻译1:Python Numpy教程

    译者注:本文智能单元首发,翻译自斯坦福CS231n课程笔记Python Numpy Tutorial,由课程教师Andrej Karpathy授权进行翻译.本篇教程由杜客翻译完成,Flood Sung ...

  8. python numpy学习记录

    numpy是一个python和矩阵相关的库,在机器学习中非常有用,记录下numpy的基本用法 numpy的数组类叫做ndarray也叫做数组,跟python标准库中的array.array不同,后者只 ...

  9. Python Numpy基础教程

    Python Numpy基础教程 本文是一个关于Python numpy的基础学习教程,其中,Python版本为Python 3.x 什么是Numpy Numpy = Numerical + Pyth ...

随机推荐

  1. JavaFX让UI更美观-CSS样式

    相对于Swing来说,JavaFX在UI上改善了很多,不仅可以通过FXML来排版布局界面,同时也可以通过CSS样式表来美化UI. 其实在开发JavaFX应用的时候,可以将FXML看做是HTML,这样跟 ...

  2. 人工智能?.netcore一样胜任!

    提起AI,大家都会先想到Python,确实Python作为一门好几十年的老语言,上一波的AI大流行使它焕发了青春.大家用Phtyon来做AI,最主要的原因无非就是编码量更少,很多数学和AI相关的Api ...

  3. pass 出错问题

    ''' a = 10 b = 8 print("a>b") if a>b else pass pass 为何报错问题: 第一部分:print 第二部分:("a ...

  4. SQL Server 枚举异或运算后值存入数据库,读取符合条件的值

    有枚举如下: [Flags] public enum Color { Red = , Green = , Blue = , White = } 定义三个枚举变量,并将值存入数据库: Color col ...

  5. python基础day6_字典dict

    数据类型划分:可变数据类型.不可变数据类型 不可变数据类型(又叫可哈希):元祖,bool ,int,str, 可变数据类型(又叫不可哈希):list,dict,set(集合) dict的key必须是不 ...

  6. ElasticSearch 基本概念 and 索引操作 and 文档操作 and 批量操作 and 结构化查询 and 过滤查询

    基本概念 索引: 类似于MySQL的表.索引的结构为全文搜索作准备,不存储原始的数据. 索引可以做分布式.每一个索引有一个或者多个分片 shard.每一个分片可以有多个副本 replica. 文档: ...

  7. MapReduce之GroupingComparator分组(辅助排序、二次排序)

    指对Reduce阶段的数据根据某一个或几个字段进行分组. 案例 需求 有如下订单数据 现在需要找出每一个订单中最贵的商品,如图 需求分析 利用"订单id和成交金额"作为key,可以 ...

  8. [vue] computed 和 method

    计算属性 计算属性只有在它的相关依赖发生改变时才会重新取值 Method method每次渲染的时候都会被执行 举一个栗子 <template>...<div>  <p& ...

  9. 使用selenium再次爬取疫情数据(链接数据库)

    爬取网页地址: 丁香医生 数据库连接代码: def db_connect(): try: db=pymysql.connect('localhost','root','zzm666','payiqin ...

  10. C语言学习笔记之输出缓冲

    在c语言中经常用到输出函数printf,当我们像往常一样在输出函数中输入我们的想要的输出的东西后加\n换行 验证结果如我们输出的一样 如果我们在后面加入死循环会不会出现这些语句呢 结果卡死了,可还是输 ...