初识NumPy库-基本操作
ndarray(N-dimensional array)对象是整个numpy库的基础。
它有以下特点:
- 同质:数组元素的类型和大小相同
- 定量:数组元素数量是确定的
一、创建简单的数组:
np.array([2,2]) 创建了一个长度为2的一维数组
array(data,dtype=):该函数可以传递两个参数,第一个为数据,可以接收嵌套的元组或列表(可以组合);第二个为数据类型,如果不传会为ndarray()对象指定最合适的数据类型。
二、基本属性:
- dtype(data-type,数据类型):指定了数组元素的唯一类型
- shape(形状):指定了数组的维数、元素数量,shape是一个元组类型
- ndim:轴数(维数)
- size:数组长度
- itemsize:定义了每一个元素的长度为多少字节
- data:表示包含数组实际元素的缓冲区,很少用
三、自带的数组创建方法
1、zeros():生成由shape作为参数指定维度的、元素都为0的数组。
In : np.zeros((3,3))
Out:
array([[ 0., 0., 0.],
[ 0., 0., 0.],
[ 0., 0., 0.]])
2、ones():类似上述函数,生成元素都为1的数组
3、arange(起始值,结束值):生成包含一个数值序列的数组。如果你想得到的序列,最后一个数再加1作为参数
4、arange(起始值,结束值,步长):步长表示序列中相邻两个数的差距
In : np.arange(0,18,3)
Out: array([ 0, 3, 6, 9, 12, 15])
5、reshape():重置定义形状。注意数量。
In : np.arange(0,8).reshape(2,4)
Out:
array([[0, 1, 2, 3],
[4, 5, 6, 7]])
7、linspace(起始值,结束值,分块数):与arange()很相似,区别在于第三个参数表示的是将序列分为多少个部分
In : linspace(0,10,5)
Out: array([ 0. , 2.5, 5. , 7.5, 10. ])
8、random.random():可以使用numpy.random模块的random()函数来随机填充数组。参数为数组长度
In : random.random(4)
Out: array([ 0.85812617, 0.38083953, 0.02089629, 0.6603858 ])
四、总结
这个是numpy库最最基本的操作,明天继续学习数组的各种运算方法。
初识NumPy库-基本操作的更多相关文章
- 机器学习三剑客之Numpy库基本操作
NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机 ...
- $python数据分析基础——初识numpy库
numpy库是python的一个著名的科学计算库,本文是一个quickstart. 引入:计算BMI BMI = 体重(kg)/身高(m)^2 假如有如下几组体重和身高数据,让求每组数据的BMI值: ...
- (一)初识NumPy库(数组的创建和变换)
在学习数据分析时,NumPy作为最基础的数据分析库,我们能够熟练的掌握它是学习数据分析的必要条件.接下来就让我们学习该库吧. 学习NumPy库的环境: python:3.6.6 编辑器:pycharm ...
- 初识numpy库
numpy是一个在Python中做科学计算的基础库,重在数值计算,也是大部分Python科学计算库的基础库,多用于在大型.多维数组上执行数值运算 numpy创建数组(矩阵): numpy中的数据类型: ...
- (二)初识NumPy库(数组的操作和运算)
本章主要介绍的是ndarray数组的操作和运算! 一. ndarray数组的操作: 操作是指对数组的索引和切片.索引是指获取数组中特定位置元素的过程:切片是指获取数组中元素子集的过程. 1.一维数组的 ...
- numpy库常用基本操作
NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推.在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量.比如说,二维数组相当于是一个一维数 ...
- Python的工具包[0] -> numpy科学计算 -> numpy 库及使用总结
NumPy 目录 关于 numpy numpy 库 numpy 基本操作 numpy 复制操作 numpy 计算 numpy 常用函数 1 关于numpy / About numpy NumPy系统是 ...
- NumPy库的基本使用
一.介绍 ——NumPy库是高性能科学计算和数据分析的基础包,它是Pandas及其它各种工具的基础 ——NumPy里的ndarry多维数组对象,与列表的区别是: - 数组对象内的元素类型必须一样 - ...
- NumPy的基本操作
1 简介 NumPy 是用于处理数组的 python 库,部分用 Python 编写,但是大多数需要快速计算的部分都是用 C 或 C ++ 编写的.它还拥有在线性代数.傅立叶变换和矩阵领域中工作的函数 ...
随机推荐
- LINUX 笔记-特定shell变量
$# 传递到脚本的参数个数 $* 以一个单字符串显示所有向脚本传递的参数.与位置变量不同,此选项参数可超过9个 $$ 脚本运行的当前进程ID号 $! 后台运行的最后一个进程的进程ID号 $@ 与$*相 ...
- 脱壳第二讲,手动脱壳PECompact 2.x
脱壳第二讲,手动脱壳PECompact 2.x PS: 此博客涉及到PE格式.所以观看此博客你要熟悉PE格式 首先,逆向inc2l这个工具,汇编中可能会用的 inc头文件转换为lib的工具 但是他有壳 ...
- WebSocket 详解教程
WebSocket 详解教程 概述 WebSocket 是什么? WebSocket 是一种网络通信协议.RFC6455 定义了它的通信标准. WebSocket 是 HTML5 开始提供的一种在单个 ...
- JAVA提高十:ArrayList 深入分析
前面一章节,我们介绍了集合的类图,那么本节将学习Collection 接口中最常用的子类ArrayList类,本章分为下面几部分讲解(说明本章采用的JDK1.6源码进行分析,因为个人认为虽然JDK1. ...
- swift之函数式编程(五)
文章内容来源于<Functional Programing in Swift>,详情请看原著 The Value of Immutability swift 对于控制值改变有一些机制.在这 ...
- HDU 3584 Cube(三位树状数组)
Cube Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submi ...
- 脑残手贱:被NFS祸害的调度系统
建议:任何时候,都要三思而后行!!! 事请的缘由 系统中采用slurm调度系统来进行并行计算.但是在GPU节点上,无论如何都无法启动slurmd,报插件初始化错误的故障. 因此需要编译新的munge和 ...
- YSlow---基于firebug的插件 ,用于网站页面性能的分析
YSlow有什么用? YSlow可以对网站的页面进行分析,并告诉你为了提高网站性能,如何基于某些规则而进行优化. YSlow可以分析任何网站,并为每一个规则产生一个整体报告,如果页面可以进行优化,则Y ...
- Java多线程Lock
JDK5以后为代码的同步提供了更加灵活的Lock+Condition模式,并且一个Lock可以绑定多个Condition对象 1.把原来的使用synchronized修饰或者封装的代码块用lock.l ...
- Apple 公司开发者账号添加团队成员
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...