参考链接: Python中的Numpy.prod

一、数组方法

创建数组:arange()创建一维数组;array()创建一维或多维数组,其参数是类似于数组的对象,如列表等

反过来转换则可以使用numpy.ndarray.tolist()函数,如a.tolist()

创建数组:np.zeros((2,3)),或者np.ones((2,3)),参数是一个元组分别表示行数和列数

对应元素相乘,a * b,得到一个新的矩阵,形状要一致;但是允许a是向量而b是矩阵,a的列数必须等于b的列数,a与每个行向量对应元素相乘得到行向量。

+ -  / 与 * 的运算规则相同。

数学上定义的矩阵乘法 np.dot(a, b)。如果形状不匹配会报错;但是允许允许a和b都是向量,返回两个向量的内积。只要有一个参数不是向量,就应用矩阵乘法。

(PS:总之就是,向量很特殊,在运算中可以自由转置而不会出错,运算的返回值如果维度为1,也一律用行向量[]表示)

读取数组元素:如a[0],a[0,0]

数组变形:如b=a.reshape(2,3,4)将得到原数组变为2*3*4的三维数组后的数组;或是a.shape=(2,3,4)或a.resize(2,3,4)直接改变数组a的形状

数组组合:水平组合hstack((a,b))或concatenate((a,b),axis=1);垂直组合vstack((a,b))或concatenate((a,b),axis=0);深度组合dstack((a,b))

数组分割(与数组组合相反):分别有hsplit,vsplit,dsplit,split(split与concatenate相对应)

将np数组变为py列表:a.tolist()

数组排序(小到大):列排列np.msort(a),行排列np.sort(a),np.argsort(a)排序后返回下标

复数排序:np.sort_complex(a)按先实部后虚部排序

数组的插入:np.searchsorted(a,b)将b插入原有序数组a,并返回插入元素的索引值

类型转换:如a.astype(int),np的数据类型比py丰富,且每种类型都有转换方法

条件查找,返回满足条件的数组元素的索引值:np.where(条件)

条件查找,返回下标:np.argwhere(条件)

条件查找,返回满足条件的数组元素:np.extract([条件],a)

根据b中元素作为索引,查找a中对应元素:np.take(a,b)一维

数组中最小最大元素的索引:np.argmin(a),np.argmax(a)

多个数组的对应位置上元素大小的比较:np.maximum(a,b,c,…..)返回每个索引位置上的最大值,np.minimum(…….)相反

将a中元素都置为b:a.fill(b)

每个数组元素的指数:np.exp(a)

生成等差行向量:如np.linspace(1,6,10)则得到1到6之间的均匀分布,总共返回10个数

求余:np.mod(a,n)相当于a%n,np.fmod(a,n)仍为求余且余数的正负由a决定

计算平均值:np.mean(a)

计算最大值:amax(a, axis=None, out=None, keepdims=False) 。Return the maximum of an array or maximum along an axis.

计算加权平均值:np.average(a,b),其中b是权重

计算数组的极差:np.pth(a)=max(a)-min(a)

计算方差(总体方差):np.var(a)

标准差:np.std(a)

算术平方根,a为浮点数类型:np.sqrt(a)

对数:np.log(a)

修剪数组,将数组中小于x的数均换为x,大于y的数均换为y:a.clip(x,y)

所有数组元素乘积:a.prod()

数组元素的累积乘积:a.cumprod()

数组元素的符号:np.sign(a),返回数组中各元素的正负符号,用1和-1表示

数组元素分类:np.piecewise(a,[条件],[返回值]),分段给定取值,根据判断条件给元素分类,并返回设定的返回值。

判断两数组是否相等: np.array_equal(a,b)

判断数组元素是否为实数: np.isreal(a)

去除数组中首尾为0的元素:np.trim_zeros(a)

对浮点数取整,但不改变浮点数类型:np.rint(a)

二、数组属性

1.获取数组每一维度的大小:a.shape

2.获取数组维度:a.ndim

3.元素个数:a.size

4.数组元素在内存中的字节数:a.itemsize

5.数组字节数:a.nbytes==a.size*a.itemsize

6.数组元素覆盖:a.flat=1,则a中数组元素都被1覆盖

7.数组转置:a.T

不能求逆、求协方差、迹等,不适用于复杂科学计算,可以将array转换成matrix。

三、矩阵方法

创建矩阵:np.mat(‘…’)通过字符串格式创建,np.mat(a)通过array数组创建,也可用matrix或bmat函数创建

matrix不会自动转换行列向量。matrix的所有运算默认都是数学上定义的矩阵运算,除非用mutiply函数实现点乘。

创建复合矩阵:np.bmat(‘A B’,’AB’),用A和B创建复合矩阵AB(字符串格式)

创建n*n维单位矩阵:np.eye(n)

矩阵的转置:A.T

矩阵的逆矩阵:A.I

计算协方差矩阵:np.cov(x),np.cov(x,y)

计算矩阵的迹(对角线元素和):a.trace()

相关系数:np.corrcoef(x,y)

给出对角线元素:a.diagonal()

四、线性代数

估计线性模型中的系数:a=np.linalg.lstsq(x,b),有b=a*x

求方阵的逆矩阵:np.linalg.inv(A)

求广义逆矩阵:np.linalg.pinv(A)

求矩阵的行列式:np.linalg.det(A)

解形如AX=b的线性方程组:np.linalg.solve(A,b)

求矩阵的特征值:np.linalg.eigvals(A)

求特征值和特征向量:np.linalg.eig(A)

Svd分解:np.linalg.svd(A)

两个array之间的距离:np.linalg.norm(a1-a2)

五.概率分布

产生二项分布的随机数:np.random.binomial(n,p,size=…),其中n,p,size分别是每轮试验次数、概率、轮数

产生超几何分布随机数:np.random.hypergeometric(n1,n2,n,size=…),其中参数意义分别是物件1总量、物件2总量、每次采样数、试验次数

产生N个正态分布的随机数:np.random.normal(均值,标准差,N)

产生N个对数正态分布的随机数:np.random.lognormal(mean,sigma,N)

六、多项式

多项式拟合:poly= np.polyfit(x,a,n),拟合点集a得到n级多项式,其中x为横轴长度,返回多项式的系数

多项式求导函数:np.polyder(poly),返回导函数的系数

得到多项式的n阶导函数:多项式.deriv(m = n)

多项式求根:np.roots(poly)

多项式在某点上的值:np.polyval(poly,x[n]),返回poly多项式在横轴点上x[n]上的值

两个多项式做差运算: np.polysub(a,b)

[转载] Python中Numpy包的用法相关推荐

  1. [转载] python中numpy包使用方法总结

    参考链接: Python中的numpy.amax 一.数组方法 创建数组:arange()创建一维数组:array()创建一维或多维数组,其参数是类似于数组的对象,如列表等 反过来转换则可以使用num ...

  2. [转载] Python中numpy.clip();numpy.fabs()的用法;以及math.pow()的说明

    参考链接: Python中的numpy.absolute 在看一些关于关于数据分析的Python代码时,时常会出现一些方法不懂其意思,今天做个小小的说明关于: python中numpy.clip()方 ...

  3. [转载] python中string函数的用法_python中string模块各属性以及函数的用法

    参考链接: Python中的string.octdigits 任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产环境还是面试考验都要面对字符串的操作. python的字符 ...

  4. [转载] Python中NumPy简介及使用举例

    参考链接: Python中的numpy.invert NumPy是Python语言的一个扩展包.支持多维数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.NumPy提供了与Matlab相似的功能 ...

  5. [转载] [转载] python 中NumPy和Pandas工具包中的函数使用笔记(方便自己查找)

    参考链接: Python中的numpy.sinh 参考链接: Python中的numpy.less_equal 二.常用库 1.NumPy NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ...

  6. [转载] python 中NumPy和Pandas工具包中的函数使用笔记(方便自己查找)

    参考链接: Python中的numpy.less_equal 二.常用库 1.NumPy NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力 ...

  7. [转载] python 中numpy快速去除nan, inf的方法

    参考链接: Python中的numpy.isinf 参考文献Python快速转换numpy数组中Nan和Inf的方法 在使用numpy数组的过程中时常会出现nan或者inf的元素,可能会造成数值计算时 ...

  8. [转载] python中numpy.concatenate()函数的使用

    参考链接: Python中的numpy.append numpy库数组拼接np.concatenate 原文:https://blog.csdn.net/zyl1042635242/article/d ...

  9. [转载] python中numpy模块的around方法_更好地舍入Python的NumPy.around:舍入numpy的数组

    参考链接: Python中的numpy.round_ I am looking for a way to round a numpy array in a more intuitive fashion ...

最新文章

  1. VS Code配置PHP XDebug
  2. Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解(1)
  3. 【UEditor】介绍
  4. 基于 Unity 中的 NGUI 插件,通用的 UI 如何设计
  5. Excel-开发者工具(WPS)
  6. Elasticsearch 集群中增加专用master节点
  7. 第512章 河系量子计算机,第512章、河系量子计算机
  8. C++字符串的个人理解
  9. 自揣允许域名访问,不允许IP访问的方法和意义
  10. [NLP]OpenNLP标记器的使用
  11. Spring AOP执行方法
  12. 3D视觉关键技术与核心问题包括哪些?
  13. 骑士人才系统后台用户名密码重设工具源码
  14. 用matlab对图像进行二维傅里叶变换
  15. 一文汇总新三板所有问题
  16. 家里宽带628连不上_win7系统宽带连接提示错误628的解决方法
  17. seamless clone
  18. python代码实现贝叶斯公式
  19. xampp mysql远程连接_远程访问xampp
  20. 模型参数与模型超参数

热门文章

  1. 2018百度之星程序设计大赛-资格赛P1002子串查询(前缀和)
  2. 小数乘分数怎么算过程_教资分数怎么算?多少分合格?
  3. bzoj 1643: [Usaco2007 Oct]Bessie's Secret Pasture 贝茜的秘密草坪(DP)
  4. 1196 骨牌铺放(宁波大学oj)
  5. docker 部署rabbitmq,k8s部署rabbitmq集群,跟踪和监控rabbitmq
  6. python机器学习库sklearn——特征提取
  7. python机器学习库sklearn——DBSCAN密度聚类
  8. python基础系列教程——数据结构(列表、元组、字典、集合、链表)
  9. js排序算法详解-基数排序
  10. library的英语怎么读音_英语元音与辅音