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 ...
随机推荐
- [ios]纯代码实现UITableViewCell的自定义扩展
(转)参考:http://blog.sina.com.cn/s/blog_65cbfb2b0101cd60.html 第一种, 简单的增加UITableViewCell一些小功能 例如在cell上面添 ...
- [团队项目]----Math Calculator
团队项目 ----Math Calculator 任务: 1.每个团队从Github上fork这个项目的源代码 https://github.com/RABITBABY/We-have-bing 2. ...
- LINQ TO DATATABLE/DATASET基本操作之-简单查询
废话不说,直接贴上代码: 其中:SerchLinqData();方法查询数据并返回一个datatable表.为数据源. #region 绑定数据 public static string BindDt ...
- java 四舍五入 保留俩位小数
public static void main(String[] args) { String str="0"; BigDeci ...
- 在Windows Live Writer中插入C# code
平时都是用Windows Live Writer写博客,发布博客.遇到需要插入代码都是先在notepad中写好,或者是拷贝到notepad,再从notepad中拷到Windows Live Write ...
- 欧拉回路-Door Man 分类: 图论 POJ 2015-08-06 10:07 4人阅读 评论(0) 收藏
Door Man Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 2476 Accepted: 1001 Description ...
- 提高 Linux 上 socket 性能
http://www.cnblogs.com/luxf/archive/2010/06/13/1757662.html 基于Linux的Socket网络编程的性能优化 1 引言 随着In ...
- jar 文件
使用类库中的类: 1.当前应用程序所在目录中没有包名的类,直接用. 2.java库. import语句导入. 3.当前目录的子孙目录有报名的类,set classpath,之前有写. 4.扩展ext文 ...
- Entity Framework 第七篇 简化排序
上篇介绍了EF的分页实现,分页的时候会用到排序,但是使用起来表达式写的似乎很繁琐 , ); 如果直接使用排序字符串,不更直观简便么? respository.GetPaged<S_Users&g ...
- apache-common pool的使用
Apache commons-pool本质上是"对象池",即通过一定的规则来维护对象集合的容器;commos-pool在很多场景中,用来实现"连接池"/&quo ...