numpy(一)
np.zeros(10,dtype=int) #创建全为0的一位数组
np.ones((3,5),dtype=float) #创建3*5的二维全为1的数组
np.full((3,5),3.14) #创建全为3.14的3*5数组
np.arange(0,20,2) #创建0-20步长为2的线性序列数组 和range相似
np.linspace(0,1,5) #创建0-1之间的5个数数组
np.random.random((3,3)) #创建3*3在0-1之间均匀分布的随机数组成的数组
np.random.normal(0,1,(3,3)) #创建3*3的均值为0方差为1的正态分布随机数数组
np.random.randint(0,10,(3,3)) #创建3*3在0-10区间的随机整数型数组
np.eye(3) # 创建3*3的单位矩阵
np.empty(3) #创建一个有3个整数型组成的未初始化数组,值可以使内存空间的任意值
np属性:
np.ndim 数组的维度
np.shape 数组的每个维度大小
np.size 数组的总大小
dtype 数据类型
切片,索引:
x=np.array([5,2,3,7,8,9])
x[0] #取索引为0的值
x[-1] #取最后一个值
x2=np.arange(0,24).reshape((3,8))
x2[0,1] #取行索引为0列索引为1的值
x2[0,0]=12 #修改值
#当将一个浮点型插入到整数型数组中时,浮点型会被截断
一维切片:
x=np.arange(10)
x[:5] #取前五个元素
x[5:] #取后五个元素
x[4:7] # 取中间子数组
x[::2] #步长为2取出数组
x[::-1] #逆向取数组
多维切片:
x2=np.arange(12).reshape((3,4))
x2[:2,:3] #两行三列
x2[:3,::2] #取三行,列隔行取
x2[::-1,::-1] # 逆向取
x2[:,0] #取第一列
x2[0,:] # 取第一行
x2[0] #取第一行简化
*注意切片获取到的元素改变原数组也会改变,需加copy
reshape重组数组
np.arange(12).reshape((3,4)) #重组成3*4的二维数组
x2[np.newaxis,:] #获取行向量
x2[:,np.newaxis] #获取列向量
数组拼接:
一维数组:
x=np.array([1,2,3])
y=np.array([3,2,1])
z=np.array([4,5,6])
np.concatenate([x,y,z])
二维数组:
x=np.arange(12).reshape((3,4))
y=np.arange(12,24).reshape((3,4))
np.concatenate([x,y],axis=1) # axis=1左右拼接,axis=0上下拼接
np.vstack 垂直栈函数,上下拼接,np.hstack 水平栈左右拼接
np.dstack 沿第三个维度拼接
数组分裂:
x=[1,2,3,55,55,3,2,1]
x1,x2,x3 = np.split(x,[3,5])
vsplit 行分裂,hspit列分裂,dsplit第三维度分裂
numpy(一)的更多相关文章
- 利用Python进行数据分析(5) NumPy基础: ndarray索引和切片
概念理解 索引即通过一个无符号整数值获取数组里的值. 切片即对数组里某个片段的描述. 一维数组 一维数组的索引 一维数组的索引和Python列表的功能类似: 一维数组的切片 一维数组的切片语法格式为a ...
- 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍
一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...
- 利用Python进行数据分析(6) NumPy基础: 矢量计算
矢量化指的是用数组表达式代替循环来操作数组里的每个元素. NumPy提供的通用函数(既ufunc函数)是一种对ndarray中的数据进行元素级别运算的函数. 例如,square函数计算各元素的平方,r ...
- python安装numpy、scipy和matplotlib等whl包的方法
最近装了python和PyCharm开发环境,但是在安装numpy和matplotlib等包时出现了问题,现总结一下在windows平台下的安装方法. 由于现在找不到了工具包新版本的exe文件,所以采 ...
- 深入理解numpy
一.为啥需要numpy python虽然说注重优雅简洁,但它终究是需要考虑效率的.别说运行速度不是瓶颈,在科学计算中运行速度就是瓶颈. python的列表,跟java一样,其实只是一维列表.一维列表相 ...
- Python Numpy,Pandas基础笔记
Numpy Numpy是python的一个库.支持维度数组与矩阵计算并提供大量的数学函数库. arr = np.array([[1.2,1.3,1.4],[1.5,1.6,1.7]])#创建ndarr ...
- broadcasting Theano vs. Numpy
broadcasting Theano vs. Numpy broadcast mechanism allows a scalar may be added to a matrix, a vector ...
- python之numpy
一.矩阵的拼接合并 列拼接:np.column_stack() >>> import numpy as np >>> a = np.arange(9).reshap ...
- win7系统下python安装numpy,matplotlib,scipy和scikit-learn
1.安装numpy,matplotlib,scipy和scikit-learn win7系统下直接采用pip或者下载源文件进行安装numpy,matplotlib,scipy时会遇到各种问题,这是因为 ...
- 给numpy矩阵添加一列
问题的定义: 首先我们有一个数据是一个mn的numpy矩阵现在我们希望能够进行给他加上一列变成一个m(n+1)的矩阵 import numpy as np a = np.array([[1,2,3], ...
随机推荐
- JavaScript入门学习笔记(一)
W3cJavaScript教程 JS是JavaScript的缩写,而JSP是Java Server Page的缩写,后者是用于服务器的语言. JavaScript代码写在标签<script> ...
- 移动端遮罩及阻止页面滑动,实用!!! 我们经常做一个fixed定位的遮罩和一个提示弹框,这时就要用到。记录--
document.body.style.height = '100%'; document.body.style.overflow = 'hidden'; document.getElementByI ...
- php中echo、print、print_r、var_dump、var_export区别
(1) print和echo是语言结构,echo输出多个值,多个值之间用逗号分隔,无返回值:print只能输出一个值,有返回值.echo和print输出整型和字符串,没法打印布尔型,如果true,打印 ...
- 10分钟理解JS引擎的执行机制
首先,请牢记2点: (1) JS是单线程语言 (2) JS的Event Loop是JS的执行机制.深入了解JS的执行,就等于深入了解JS里的event loop 1.灵魂三问 (1) JS为什么是单线 ...
- python第10天(上)
multiprocessing包是Python中的多进程管理包.与threading.Thread类似,它可以利用multiprocessing.Process对象来创建一个进程.该进程可以运行在Py ...
- 加载Assetbundle需要注意的地方
WWW:异步实现,手机上不能用于同步代码,需要监测其完成状态.不用www.dispose. CreateFromFile:阻塞,但是移动平台上面的路径格式有点坑,没时间看,不用. 以下两个方式需要先使 ...
- Python学习(三十四)—— Django之ORM之单表、联表操作
一.单表查询API汇总 <1> all(): 查询所有结果 <2> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 <3> get(**kw ...
- linux添加新磁盘
先fdisk -l 看一下有哪些没有挂载的盘符. 然后将创建的文件夹与待挂载的盘符绑定,即:mount /dev/vdc /data
- C++ vector的用法(整理)
vector 是向量类型,它可以容纳许多类型的数据,如若干个整数,所以称其为容器.vector 是C++ STL的一个重要成员,使用它时需要包含头文件: #include<vector>; ...
- 【Spring Boot】关于上传文件例子的剖析
目录 Spring Boot 上传文件 功能实现 增加ControllerFileUploadController 增加ServiceStorageService 增加一个Thymeleaf页面 修改 ...