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的更多相关文章

  1. Getting started with SciPy for .NET

    Getting started with SciPy for .NET 1.) IronPython Download and install IronPython 2.7, this will re ...

随机推荐

  1. 索引介绍,转载自:https://tech.meituan.com/2014/06/30/mysql-index.html

    索引原理 除了词典,生活中随处可见索引的例子,如火车站的车次表.图书的目录等.它们的原理都是一样的,通过不断的缩小想要获得数据的范围来筛选出最终想要的结果,同时把随机的事件变成顺序的事件,也就是我们总 ...

  2. Ubuntu利用ROS搭建手机移动网络摄像头(Android)

    所需设备 PC -> Ubuntu 16.04 - > ROS Kinetic Android系统手机 1.Android移动端APP下载安装 配置手机端:(一般默认即可RTSP) 2.源 ...

  3. 漫谈 MyCat 配置系统

    上篇文章<MyCat 启蒙:分布式系统的数据库架构演变>中,我们通过一个项目从零到百万级访问的变化,展示了这个过程中的数据层架构变化.其中说到了数据层架构变化所带来的三个问题: 读写数据源 ...

  4. 跨域 (1) jsonp 跨域

    jsonp 的例子 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  5. 【洛谷P3413】萌数

    题目大意:求区间 [l,r] 内萌数的个数,其中萌数定义为数位中存在长度至少为 2 的回文子串的数字. 题解:l, r 都是 1000 位级别的数字,显然是一道数位 dp 的题目,暴力直接去世. 发现 ...

  6. 五大Linux简单命令解决系统性能问题

    五大Linux简单命令解决系统性能问题 2010-12-17 10:07 James Turnbull TechTarget中国 字号:T | T 管理Linux主机的性能看起来经常象是在变魔术一样. ...

  7. Windows 7、Windows XP SP3关闭DEP堆栈执行保护

    Windows XP SP3 在Windows XP SP3中,关闭DEP的方法是: 编辑C:\boot.ini,你大概会看到如下内容 [boot loader] timeout=30 default ...

  8. jQuery、JS读取xml文件里的内容(JS先通过document.implementation.createDocument方法将xml转换成document对象,jQuery将读取到的xml转成table)

    xml文件:test.xml <?xml version="1.0"?> <note> <to>George</to> <fr ...

  9. 【shell】awk的next用法

    awk的next相当于循环中continue的作用,next后面的语句将不再执行. 例如,下面的例子中,包含数字3的那行的print语句没有被执行. [root]$ seq | awk '{print ...

  10. protocol buffer第一篇:语法介绍

    先理解一下protocol buffer是什么东西. protocol buffer是google发明的一种数据序列化方案,和json是同种类型的玩意,它非常适合在rpc场景下使用.同json一样,p ...