numpy库的常用知识
下面是一些杂碎的知识点:
首先我们说说多维数组:
数组的属性:
ndarray.ndim, 表示数组的秩是多少;
ndarray.shape,返回数组的形状;
ndarray.size,数组元素的总个数,等于shape属性中元组元素的乘积
ndarray.dtype,一个用来描述数组中元素类型的对象
ndarray.itemsize ,数组中每个元素的字节大小。
一些常用的函数
zeros()生成全为零的数组;
ones()生成合为1的数组;
empty()生成一个随机数组;
reshape()函数,,返回一个数组变形的样子。按C风格来哦,即最右边的索引变化最快;
resize()函数,和上面操作相同 ,不过它是改变原数组哦,上面的reshape()不会改变原数组的;
arange()函数,可以产生一个一维的数组哦。
ravel()函数, 它展开的函数的风格通常是C风格的,即最右边的索引变化最快;
transpose(),把数组进行转置,如索引为(2,3,4)元素变为索引为(4,3,2)的元素;
column_stack()函数,把一维数组按列组合成二维数组;
row_stack()函数,一维数组以行组合成二维数组
vstack
()沿着第一个轴组合,hstack
()函数沿着第二个轴组合
vsplit
()沿着纵向的轴分割,array split()
允许指定沿哪个轴分割。argmax()函数,求出指定的坐标轴上的最大的值的下标。
a = np.array([[2,5,3],[4,7,1]])
a.argmax(0) #求出数组a在第0轴上的最大值的下标,0轴就是列轴
#输出
array([1,1,0]) a.argmax(1) #求出数组a在第1轴上的最大值的下标,1轴就是行轴
#输出:
array([1,1])newaxis
linspace()函数通过指定开始值、终值和元素的个数来创建一维数组,可以通过endpoint关键字指定是否包括终值,缺省时包括终值;
>>> np.linspace(0,5,11)
array([ 0. , 0.5, 1. , 1.5, 2. , 2.5, 3. , 3.5, 4. , 4.5, 5. ])索引,切片和迭代:
使用arange函数时,不包括终值;
可以能数组的元素的索引作切片哦,记住,索引从0开始的。当少于轴数的索引被提供时,确失的索引被认为是整个切片。
注意:迭代 多维数组是就第一个轴而言的。
数组的flat属性为数组元素的一个迭代器,可以启遍例数组中的每个元素;
随着学习继续补充
补充:
1. numpy中的数组的axis 是从0开始的,最里面的为0,外面的为1, 2等 ,最里面表示变化速度最慢的。。如一个数组 array().shape = (3, 12, 15), axes为 0 的是3, 为1的是12, 为2的是15。 其中吧,12代表了行数, 15代表了列数;
2. Numpy.mean()函数:
它的作用是计算一个 array_like 的算术平均值, 可以指定哪一个axis. .另个有两种方法使用它。
它的原型为:mean(a, axis=None, dtype=None, out=None, keepdims=False)
例子:
>>> a = np.array([[1, 2], [3, 4]])
>>> np.mean(a)
2.5
>>> np.mean(a, axis=0)
array([ 2., 3.])
>>> np.mean(a, axis=1)
array([ 1.5, 3.5])
上面的例子我们也可以简单这个做: a.mean(0) 或 a.mean(1)
另个,当axis的参数省略时,它会计算所有值的平均值; 建议用标准的方法写代码;
numpy库的常用知识的更多相关文章
- numpy库:常用基本
numpy 本文主要列出numpy模块常用方法 大部分内容来源于网络,而后经过自己的一点思考和总结,如果有侵权,请联系我 我是一名初学者,有哪些地方有错误请留言,我会及时更改的 创建矩阵(采用ndar ...
- matplotlib库的常用知识
看看matplotlib是什么? matplotlib是python上的一个2D绘图库,它可以在夸平台上边出很多高质量的图像.综旨就是让简单的事变得更简单,让复杂的事变得可能.我们可以用matplot ...
- 机器学习之numpy库中常用的函数介绍(一)
1. mat() mat()与array的区别: mat是矩阵,数据必须是2维的,是array的子集,包含array的所有特性,所做的运算都是针对矩阵来进行的. array是数组,数据可以是多维的,所 ...
- numpy库常用基本操作
NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推.在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量.比如说,二维数组相当于是一个一维数 ...
- Python之Numpy库常用函数大全(含注释)
前言:最近学习Python,才发现原来python里的各种库才是大头! 于是乎找了学习资料对Numpy库常用的函数进行总结,并带了注释.在这里分享给大家,对于库的学习,还是用到时候再查,没必要死记硬背 ...
- NumPy和Pandas常用库
NumPy和Pandas常用库 1.NumPy NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组. 用于对整组数 ...
- Python之Numpy库常用函数大全(含注释)(转)
为收藏学习,特转载:https://blog.csdn.net/u011995719/article/details/71080987 前言:最近学习Python,才发现原来python里的各种库才是 ...
- Python数据分析numpy库
1.简介 Numpy库是进行数据分析的基础库,panda库就是基于Numpy库的,在计算多维数组与大型数组方面使用最广,还提供多个函数操作起来效率也高 2.Numpy库的安装 linux(Ubuntu ...
- Numpy库的学习(三)
今天我们继续学习一下Numpy库的学习 废话不多说 ,开始讲 比如我们现在想创建一个0-14这样一个15位的数组 可以直接写,但是很麻烦,Numpy中就给我们了一个方便创建的方法 numpy中有一个a ...
随机推荐
- python基础使用
Python 标识符 在python里,标识符有字母.数字.下划线组成. 在python中,所有标识符可以包括英文.数字以及下划线(_),但不能以数字开头. python中的标识符是区分大小写的. 以 ...
- java 编程时候的性能调优
一.避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 例子: import java.util ...
- [xcode]instruments来检验你的app
原文网址:http://www.cocoachina.com/industry/20140114/7696.html 比较了好多关于instruments 还是发现老外写的比较牛逼.于是果 ...
- 温故而知新 clone
浅复制(浅克隆) 被复制对象所有变量都含有与原来对象的相同值,对象中对其他对象的引用仍然指向原来的对象,换言之,复制对象只复制考虑的对象,而不复制所引用的对象.继承自java.lang.Object类 ...
- Resolving failed: Temporary failure in name resolution 错误解决方法
首先,检查自己的服务器是否配置了DNS: 其次,在确认了自己已经配置了DNS后,并且域名解析已经正常的情况下,还有上面的问题,接下来就是重启自己的web服务器.比如,apache,nginx等. ...
- asp.net dropdownlist和listbox
if (!IsPostBack) { //页面初次加载时执行这里的内容 DataSet ds = new DataSet(); //数据集 ds.Tables.Add("stu") ...
- nginx 的限制连接模块limit_zone与limit_req_zone
转载于:http://storysky.blog.51cto.com/628458/642970/ nginx 上有两个限制连接的模块一个是 limit_zone 另一个是 limie_req_zon ...
- [转]get,post数据长度的限制
一.问题起因 在某项目释放后Bug统计的附件<释放后问题>里有: 问题 原因 分析 备注 CSV处理时,如果处理的主题数过多,发生URL参数上限的错误: 可变长度的参数通过URL方式传递, ...
- 2016年11月14日 星期一 --出埃及记 Exodus 20:5
2016年11月14日 星期一 --出埃及记 Exodus 20:5 You shall not bow down to them or worship them; for I, the LORD y ...
- 【Toolkit】关闭Closeable的简单工具类
Java中有很多连接类的类实现java.io.Closeable,而关闭资源是一项重复的劳动,写一个简单的工具类避免重复劳动. > JDK7.0中,哪些类实现java.io.Closeable?