numpy2
1、通用函数,是一种在ndarray数据中进行逐元素操作的函数。某些函数接受一个或多个标量数值,并产生一个或多个标量结果,通用函数就是对这些函数的封装。
1、常用的一元通用函数有:abs\fabs sqrt square exp log\log2\log10\log1p sign ceil floor rint modf isnan sin\cos\tan\sinh\cosh\tanh arccos\arctan\arcsin logical_not
2、二元通用函数:add subtract multiply divide、floor_divide power maximun、fmax minimun、fax mod copysign greater、greater_equl、less
2、将条件逻辑作为数组操作,np.where函数,其是三元表达式 x if condition else y的向量化版本。
xarr = np.array([1.1, 1.2, 1.3, 1.4, 1.5])
yarr = np.array([2.1, 2.2, 2.3, 2.4, 2.5])
cond = np.array([True, False, True, True, False])
result = np.where(cond, xarr, yarr) # result中的元素来源:若cond中为True,返回xarr中对应元素,否则返回yarr中的元素。
result
Out[59]:
>>>array([1.1, 2.2, 1.3, 1.4, 2.5])
3、数学和统计方法
1、聚合函数(又称缩减函数):例如sun、mean、std、var等等,mean、sum等可以接受一个可选参数 axis,用于计算指定轴上的统计值,axis =0计算行方向,axis =1计算列方向。
2、其他基础统计方法,min,max argmin,argmin 返回最小值、最大值的索引值 cumsum\cumprod 从0、从1开始计算累计值
4、布尔值数组的方法
1、sum()可以用来统计布尔数组中的True的个数
arr = np.random.randn(100)
(arr > 0).sum()
Out[62]:
>>>46
2、对于布尔值数组,有两个比较有用的方法:any()检查数组中是否至少有一个True, all()检查是否每个值都是True
bools = np.array([False, False, True, False])
print(bools.any())
print(bools.all())
True
False
5、排序
1、sort(x),直接使用 x.sort()的形式,在原数组上进行操作,使用np.sort(x)的形式返回的是已经排序好的数组拷贝。
6、唯一值与其他集合操作
1、np.unique(x) ,返回的是数组中唯一值排序后形成的数组;
2、np.in1d(x),检查一个数组中的值是否存在于另外一个数组中,返回一个布尔值数组;
其他数组集合操作:intersect1d(x,y) 计算交集并排序;union1d(x,y)计算并集并排序;setdiff1d(x,y)差集;setxor1d(x,y)异或集
7、使用数组进行文件输入和输出
np.load()加载 np.save()保存
8、线性代数
1、矩阵乘法,NumPy中,” * “表示逐元素相乘,矩阵乘法用dot()函数,x.dot(y)或者np.(x,y)
2、numpy.linalg 矩阵分解的标准函数集,常用函数有:dot diag trace 计算对角元素和 eig 计算仿真的特征值和特征向量 inv 求逆 qr 计算QR分解 svd 计算奇异值分解(SVD) solve 求解x的线性系统 lstsq 计算最小二乘解
9、伪随机数生成
1、numpy.random模块补充了python内建的random模块的不足,可以高效地生成多种概率分布下地完整样本数据值。
random下的部分常用函数:
seed 向随机数生成器传递随机状态种子; permutation 返回一个随机序列的随机排列,或者返回一个乱序的整数范围序列 ; shufffle 随机排列一个序列
rand 从均匀分布中抽取样本 randint 从给定的范围内随机抽取整数 randn 从均值0方差1的正态分布中抽取样本 binomial从二项分布中抽取样本
noamal 从高斯分布中抽取样本 beta 从beta分布中抽取样本 chisquare 从卡方分布中抽取样本 gamma 从伽马分布中抽取样本 uniform 从[0,1]均匀分布中抽取样本
numpy2的更多相关文章
- Getting started with SciPy for .NET
Getting started with SciPy for .NET 1.) IronPython Download and install IronPython 2.7, this will re ...
随机推荐
- At grand 024
A /* Huyyt */ #include <bits/stdc++.h> #define mem(a,b) memset(a,b,sizeof(a)) #define mkp(a,b) ...
- Ubuntu16.04下caffe CPU版的图片训练和测试
一 数据准备 二.转换为lmdb格式 1.首先,在examples下面创建一个myfile的文件夹,来用存放配置文件和脚本文件.然后编写一个脚本create_filelist.sh,用来生成train ...
- source insight支持查看makefile、kconfig以及.s代码方法
在用sourceinsight查看linux内核源码的时候,大家会发现不能查看源码中的makefile和kconfig代码,即不能搜索到makefile和kconfig文件.这是因为source in ...
- python基础练习题5
01:输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数 import string s = input('input a string:\n') letters =0 space = ...
- SpringBoot + kaptcha 生成、校对 验证码
1.引入 kaptcha 的 Maven 依赖 <dependency> <groupId>com.github.penggle</groupId> <art ...
- mysql8.0.17复制搭建及其gtid的1062和1032异常
mysql8.0.17复制搭建及其gtid的1062和1032异常 参考资料: https://blog.csdn.net/wzy0623/article/details/91982743https: ...
- hdu 6377 : 度度熊看球赛
题目链接 题解: 将原问题转换为 对于全部 (2n)! 种情况,每种情况对ans的贡献为 D^k,其中k表示该情况下有k对情侣座位相邻. 预处理好共有 i (1<=i<=N)对情侣时,出现 ...
- 对JavaScript 引擎基础:原型优化的研究 -----------------------引用
一.优化层级与执行效率的取舍 介绍了现代 JavaScript 引擎通用的工作流程: 我们也指出,尽管从高级抽象层面来看,引擎之间的处理流程都很相似,但他们在优化流程上通常都存在差异.为什么呢?为什么 ...
- linux-PXE-12
以DHCP+DNS模式管理服务器IP地址和主机名.服务器上架前,以其MAC地址为依据,在DHCP中配置主机保留并分配主机名.DHCP结合TFTP提供的PXE服务,提供PXE引导Linux内核和启动镜像 ...
- 选择vim编辑器的7个理由
当我刚刚开始用 vi 文本编辑器的时候,我讨厌它!我认为这是有史以来设计上最痛苦和反人类的编辑器.但我还是决定我必须学会它,因为如果你使用的是 Unix,vi 无处不在并且是唯一一个保证你可以使用的编 ...