1-Numpy的通用函数(ufunc)
一、numpy“通用函数”(ufunc)包括以下几种:
- 元素级函数(一元函数):对数组中的每个元素进行运算
- 数组级函数:统计函数,像聚合函数(例如:求和、求平均)
- 矩阵运算
- 随机生成函数
| 函数名 | 作用 | 例子 | 结果 |
|
np.abs()、sum()、mean() std()、var() |
计算绝对值、求和、求平均值 求标准差、方差 |
arr = np.array([1,2,-3,-4,5]) np.abs(arr) |
array([1, 2, 3, 4, 5]) |
|
np.min()、max()、 argmin ()、argmax() |
最小值、最大值、 最小值索引、最大值索引 |
arr = np.array([1.1,2.2,-3.3]) |
2 |
| np.square() | 计算各元素的平方 |
arr = np.array([1,2,-3,-4,5]) np.square(arr) |
array([ 1, 4, 9, 16, 25], dtype=int32) |
| np.sqrt() | 计算各元素的平方根 |
arr = np.array([1,2,4,5]) np.sqrt(arr) |
array([1. , 1.41421356, 2. , 2.23606798]) |
| np.exp() | 计算各元素以e为底的指数(ex) |
arr = np.array([1,2,4,5]) np.exp(arr) |
array([ 2.71828183, 7.3890561 , 54.59815003, 148.4131591 ]) |
|
np.log()、 log10()、log2() |
计算以e、10、2为底的对数 | arr = np.array([10,100,1000]) np.log10(arr) |
array([1., 2., 3.]) |
| np.sign() |
返回各元素的正负号: 1(正数)、0(零)、-1(负数) |
arr = np.array([1,2,-3,-4,5,0]) np.sign(arr) |
array([ 1, 1, -1, -1, 1, 0]) |
| np.sort() |
对数组进行排序(默认升序) 多维数组可以在单个轴上进行排序 |
arr = np.array([1,2,-3,-4,5,0])
np.sort(arr) |
array([-4, -3, 0, 1, 2, 5]) |
| np.unique() |
去重--->结果默认升序排列 同python中的集合set() |
arr = np.array([1,2,-3,2,1,0]) arr.unique() |
array([-3, 0, 1, 2]) |
| np.ceil() | 向上取整 | arr = np.array([1.1,2.2,-3.3]) np.ceil(arr) |
array([ 2., 3., -3.]) |
| floor() | 向下取整 | arr = np.array([1.1,2.2,-3.3]) np.floor(arr) |
array([ 1., 2., -4.]) |
| np.rint() | 四舍五入 | arr = np.array([1.1,2.2,-3.3]) np.rint(arr) |
array([ 1., 2., -3.]) |
| np.modf() | 小数和整数分离 | arr = np.array([1.1,2.2,-3.3]) np.modf(arr) |
(array([ 0.1, 0.2, -0.3]), array([ 1., 2., -3.])) |
| np.sin()、cos()、tan() | 正弦、余弦、正切 | 同上 | |
| np.cumsum() | 求数组元素累计和 | arr = np.array([1,2,3]) np.cumsum(arr) |
array([1, 3, 6], dtype=int32) |
| np.cumprod() | 求数组元素的累积积 | arr = np.array([1,2,3]) np.cumprod(arr) |
array([1, 2, 6], dtype=int32) |
二、numpy.linalg模块包括许多矩阵运算
常用的有:
| 函数名 | 作用 | 例子 | 结果 |
| np.diag() |
返回矩阵的主对角线元素, 若输入一维数组则返回对角矩阵 |
arr=np.array([[1,2,3],[2,2,3],[3,5,1]]) np.diag(arr) |
array([1, 2, 1]) |
| np.trace() | 计算对角线元素之和 | np.trace(arr) | 4 |
| np.linalg.det() | 计算矩阵的行列式 | np.linalg.det(arr) | 12.999999999999995 |
| np.linalg.inv() | 计算矩阵的逆 | np.linalg.inv(arr) | array([[-1.00000000e+00, 1.00000000e+00, -9.25185854e-18], [ 5.38461538e-01, -6.15384615e-01, 2.30769231e-01], [ 3.07692308e-01, 7.69230769e-02, -1.53846154e-01]]) |
| np.dot() | 矩阵点乘 | arr2 = np.array([[1,2],[2,3],[3,4]]) np.dot(arr,arr2) |
array([[14, 20], [15, 22], [16, 25]]) |
三、numpy.random模块包括许多生成随机数的函数
常用的有:
| 函数名 | 作用 | 例子 | 结果 |
| np.random.rand() | 产生(0,1)均匀分布的随机数 | arr = np.random.rand(2,2) | array([[0.28576059, 0.87691219], [0.98174158, 0.37963998]]) |
| np.random.randint() |
从给定上下限范围内随机选取整数 (默认是0-1之间) |
arr = np.random.randint(0,5,size=(2,2)) | array([[4, 3], [2, 1]]) |
| np.random.binomial() |
产生二项分布的随机数, 有两个参数:n、p;且可用size指定形状 |
arr=np.random.binomial(20,0.3) | 7 |
| np.random.normal() |
产生正态分布的随机数 有两个参数:均值μ、标准差σ;且可用size指定形状 |
arr = np.random.normal(0,0.4,size=(2,2)) |
array([[ 0.19689244, 0.1862919 ], [ 0.5238639 , 0.22638041]]) |
| np.random.randn() |
产生标准正态分布的随机数 即均值μ=0、标准差σ=1 |
arr = np.random.randn(2,3) | array([[ 0.25079709, -0.35966478, -1.28589538], [-1.02478972, -0.2292332 , -1.40625537]]) |
| np.random.seed() |
确定随机数生成的种子,让生成随机数的过程可重现(不设置seed时,每次生成的随机数将不同) |
np.random.seed(5) np.random.seed(5) |
array([[0.22199317, 0.87073231], array([[0.22199317, 0.87073231, 0.20671916], |
1-Numpy的通用函数(ufunc)的更多相关文章
- numpy之通用函数ufunc
通用函数-元素级数组函数 通用函数(ufunc)是一种对ndarray执行元素级运算的函数. 一元ufunc import numpy as np arr = np.arange(-10,10,2) ...
- 初探numpy——numpy常用通用函数
numpy通用函数 快速的逐元素数组函数,也可以称为ufunc,对ndarray数据中的元素进行逐元素操作的函数 一元通用函数 函数名 描述 abs.fabs 取绝对值 sqrt 计算平方根,等同于a ...
- Numpy 的通用函数:快速的元素级数组函数
通用函数: 通用函数(ufunc)是一种对ndarray中的数据执行元素级运算的函数.你可以将其看作简单函数(接受一个或多个标量值,并产生一个或度过标量值)的矢量化包装器. 简单的元素级变体,如sqr ...
- numpy的通用函数:快速的元素级数组函数
通用函数(ufunc)是对ndarray中的数据执行元素级运算的函数.可看作简单函数的矢量化包装. 一元ufunc sqrt对数组中的所有元素开平方 exp对数组中的所有元素求指数 In [93]: ...
- numpy 的通用函数
1 CSV文件 CSV,Comma Separate Values,是逗号分隔文件的缩写,是一种存储数据的纯文本格式,通常用于存储电子表格或数据库软件 特点 每条记录占一行 以逗号为分隔符 逗号前后的 ...
- numpy的通用函数
通用函数:快速的元素级数组函数 通用函数是一种对ndarry中的数据执行元素级运算的函数,可以看作是简单函数(接受一个或多个标量值,并产生一个或多个标量值)的矢量化包装器. 一元func: abs丶f ...
- numpy通用函数
numpy的通用函数可以对数组进行向量化操作,可以提高数组元素的重复计算的效率. 一.numpy的算数运算符都是对python内置符的封装 算数运算符 >>> import nump ...
- NumPy的详细教程
原文 http://blog.csdn.net/lsjseu/article/details/20359201 主题 NumPy 先决条件 在阅读这个教程之前,你多少需要知道点python.如果你想 ...
- 学习笔记之NumPy
NumPy — NumPy http://www.numpy.org/ NumPy is the fundamental package for scientific computing with P ...
随机推荐
- centos7 mysql8.0替换为5.7版本
今天按教程把mysql 的yum文件下载下来安装好,是8.0版本的,安装社区版的时候发现现在的8.0版本有1.7G那么大,就想重新安装5.7版本的,然后网上又找到一个5.7版本的yum,发现不能替换, ...
- 手写SpringMVC框架(二)-------结构开发设计
续接前文, 手写SpringMVC框架(一)项目搭建 本节我们来开始手写SpringMVC框架的第二阶段:结构开发设计. 新建一个空的springmvc.properties, 里面写我们要扫描的包名 ...
- 揭秘JAVA JVM内幕
在之前的文章 一步步解析java执行内幕 中,比较详细分析了java代码是如何一步一步在jvm中执行的,然而设计的的jvm核心技术点,并未做深入分析,本篇文章将重点分析jvm,涉及到的内容包括jvm内 ...
- 「单调队列优化DP」P2034 选择数字
「单调队列优化DP」P2034 选择数字 题面描述: 给定一行n个非负整数a[1]..a[n].现在你可以选择其中若干个数,但不能有超过k个连续的数字被选择.你的任务是使得选出的数字的和最大. 输入格 ...
- Vue中computed的本质及与methods的区别
一.computed的本质? computed为什么不像methods一样加小括号使用? 正常使用computed方式 运行结果 至于为什么computed为什么不像methods一样使用小括号调用, ...
- BUUCTF-Misc-No.1
# BUUCTF-Misc # 签到 flag{buu_ctf} 金三胖 说实话直接看出来flag{he11ohongke} 二维码 直接binwalk扫一下,-e分离就出来一个带锁的zip爆破一下就 ...
- Zip破解工具Fcrackzip使用简介
0x00 fcrackzip简单介绍 fcrackzip是一款专门破解zip类型压缩文件密码的工具,工具小巧方便.破解速度快,能使用字典和指定字符集破解,适用于linux.mac osx 系统 0x0 ...
- REST,RPC和GraphQL应用场景,WebHooks、WebSocket、HTTP Streaming应用场景。
一.请求--响应API. 请求--响应类的API的典型做法是,通过基于HTTP的Web服务器暴露一个/套接口.API定义一些端点,客户端发送数据的请求到这些端点,Web服务器处理这些请求,然后返回响应 ...
- linux常用命令(自己感觉常用的)
常用命令 常用指令 ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all) shutdown -r 重启 -h 关机 reboot 重启 ...
- 数据可视化之powerBI入门(十三)CALCULATE函数的最佳搭档:FILTER
https://zhuanlan.zhihu.com/p/64383000 介绍过CALCULATE函数之后,有必要再介绍它的最佳搭档:FILTER函数. CALCULATE函数的第二个及之后的参数是 ...