Numpy | ndarray数组基本操作
搞不懂博客园表格的排版。。。
说明:
0 ndarray :多维数组对象
1 np :import numpy as np
2 nda :表示数组的名称
1 生成数组
| 函数名 | 描述 |
| np.array | 将输入的数据转换为ndarray,默认复制所有的输入数据(深拷贝) |
| np.asarray | 将输入转换为ndarray,如果输入已经是ndarray则不再复制(浅拷贝) |
| np.arange |
1 使用Python的内置函数range,返回一个数组 2 创建等差数组 — 指定步长 (start,stop, step, dtype) |
| np.linspace | 创建等差数组 — 指定数量 (start, stop, num, endpoint) |
| np.logspace | 创建等比数列 (start,stop, num) |
| np.full | 根据给定形状和数据类型生成指定数值的数组 |
| np.full_like | 生成与给定数组形状一致,但内容是指定数值的数组 |
| np.random.randn | 产生的随机数组服从正态分布 |
| np.random.normal | (loc, scale, size) 按照size的形状返回均值为loc,标准差为scale的正态分布数组 |
| random.standard_normal | (size) 生成size形状的标准正态分布数组 |
| np.random.rand | 产生的随机数组服从均匀分布 |
| np.random.uniform | (low, high, size)均匀分布的数组 |
| np.random.randint | (low, high=None, size=None, dtype='l')从一个均匀分布中随机采样,生成一个整数或N维整数数组 |
2 ndarray 的属性
| 属性名 | 属性解释(返回) |
| ndarray.shape | 数组形状(元组) |
| ndarray.ndim | 数组维数 |
| ndarray.size | 数组中所有元素的数量 |
| ndarray.itemsize | 一个数组元素的长度(字节) |
| ndarray.dtype | 数组元素的类型 |
3 索引与切片
3.1 索引:从 0 计数
3.2 切片:对象[:, :] -- 先行后列
区别于 Python 的 list ,数组的切片是直接改动原数组,这意味着数据并不被复制,如果想要一份数组切片的拷贝,需要先复制这个数组,如 arr[5:7].copy()
4 修改数组
| 方法 | 描述 |
| nda.reshape(shape, order) | 返回一个具有相同数据域,但shape不一样的视图(相当于只进行数据重新划分)。行、列不进行互换,新产生一个ndarray |
| nda.resize(new_shape) | 修改数组本身的形状(需要保持元素个数前后相同),行、列不进行互换,修改原来的ndarray |
| nda.T | 数组转置 |
| nda.astype(type) | 返回修改了类型之后的数组 |
| nda.tostring() | 转化为字符串 |
| np.unique(对象) | 数组去重 |
5 ndarray 运算
| 分类 | 符号或函数 | 描述 |
| 逻辑运算 | > , <, == | |
| 通用判断函数 | np.all() | 是否全部... |
| np.any() | 是否有... | |
| 三元运算 | np.where(条件,符合返回,不符合返回) | |
| 基础统计方法 | np.min(adn, axis) | 最小 |
| np.max(adn, axis) | 最大 | |
| np.median(adn, axis) | 中位数 | |
| np.mean(adn, axis) | 平均数 | |
| np.std(adn, axis) | 标准差 | |
| np.var(adn, axis) | 样本方差 | |
| np.argmax(axis) | 最大元素对应的下标 | |
| np.argmin(axis) | 最小元素对应的下标 | |
| cumsum | 从零开始元素累计和 | |
| cumprod | 从零开始元素累计积 |
Numpy | ndarray数组基本操作的更多相关文章
- 解决Tensorflow ValueError: Failed to convert a NumPy array to a Tensor (Unsupported object type numpy.ndarray)
问题描述 在将一个数组送入tensorflow训练时,报错如下: ValueError: Failed to convert a NumPy array to a Tensor (Unsupporte ...
- Python开发:NumPy学习(一)ndarray数组
一.数据维度 一个数据表达一个含义,一组数据表达一个或多个含义. 数据维度概念:一组数据的组织形式,其中有一维数据.二维数据.多维数据.高维数据. 1. 一维数据 一维数据由对等关系的有序或无序数据 ...
- Numpy的ndarray数组基础
NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引. ndarray 对象是用于存放同类型元素的多维数组. 1.数组的 ...
- 3.2Python数据处理篇之Numpy系列(二)--- ndarray数组的创建与变换
目录 (一)ndarray数组的创建 1.从列表以元组中创建: 2.使用函数创建: (二)ndarray数组的变换 1.维度的变换: 2.类型的变换: 目录: 1.ndarray数组的创建 2.nda ...
- Numpy数组基本操作(数组索引,数组切片以及数组的形状,数组的拼接与分裂)
一:数组的属性 每个数组都有它的属性,可分为:ndim(数组的维度),shape(数组每个维度的大小),size(数组的总大小),dtype(数组数据的类型) 二:数组索引 和python列表一样,N ...
- Numpy 创建数组
ndarray 数组除了可以使用底层 ndarray 构造器来创建外, 也可以通过以下几种方式来创建. numpy.empty numpy.empty 方法用来创建一个指定形状(shape),数据类型 ...
- NumPy Ndarray 对象
NumPy Ndarray 对象 NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引. ndarray 对象是用于存放 ...
- numpy.random.random & numpy.ndarray.astype & numpy.arange
今天看到这样一句代码: xb = np.random.random((nb, d)).astype('float32') #创建一个二维随机数矩阵(nb行d列) xb[:, 0] += np.aran ...
- Python中Numpy ndarray的使用
本文主讲Python中Numpy数组的类型.全0全1数组的生成.随机数组.数组操作.矩阵的简单运算.矩阵的数学运算. 尽管可以用python中list嵌套来模拟矩阵,但使用Numpy库更方便. 定义数 ...
随机推荐
- Sublime Text3添加到右键菜单,"用 SublimeText3 打开"
在Sublime Text3安装目录下新建一个文件 sublime_addright.inf 文件内容: [Version] Signature="$Windows NT$" [D ...
- MySQL存储过程和游标
一.存储过程 什么是存储过程,为什么要使用存储过程以及如何使用存储过程,并且介绍创建和使用存储过程的基本语法. 什么是存储过程: 存储过程可以说是一个记录集,它是由一些T-SQL语句组成的代码块,这些 ...
- 阿里妈妈的iconfont的引用问题
一.先进官网 我们看到了上面的这些图标,是不是很心动,阿里妈妈就是给力,给马老师点赞,但是问题来了我们怎么去使用呢. 二.点击图标 嘿嘿,上面的操作步骤我就不多说了吧,我相信大家都会做的,接下来我们就 ...
- 剑指offer-面试题59_1-滑动窗口的最大值-数组
/* 题目: 链接:https://www.nowcoder.com/questionTerminal/1624bc35a45c42c0bc17d17fa0cba788 来源:牛客网 给定一个数组和滑 ...
- CVE-2019-1388 Windows UAC提权
漏洞简述 该漏洞位于Windows的UAC(User Account Control,用户账户控制)机制中.默认情况下,Windows会在一个单独的桌面上显示所有的UAC提示——Secure Desk ...
- HTTP Status 404 – 未找到 spring mvc
HTTP Status 404 – 未找到 Type Status Report 消息 /houseSale//houseSaleController/houseSaleList 描述 源服务器未能找 ...
- java控制台模式控制光标及字符颜色
System.out.println("\033[47;31mhello world\033[5m"); 47是字背景颜色, 31是字体的颜色, hello world是字符串. ...
- ES的性能优化
ES的性能优化 es在数据量很大的情况下(数十亿级别)如何提高查询效率? 在es里,不要期待着随手调一个参数,就可以万能的应对所有的性能慢的场景.也许有的场景是你换个参数,或者调整一下语法,就可以搞定 ...
- contos7命令行访问网址
1.curl访问: 例子: curl http://www.baidu.com 注意:这种访问只会直接读取网站HTML代码出来 2.elinks访问: yum -y install elinks : ...
- Vue与原生APP的相互交互
现在好多APP都采用了Hybrid的开发模式,这种模式特别适合那些内容变动更新较大的APP,从而使得开发和日常维护过程变得集中式.更简短.更经济高效,不需要纯原生频繁发布.但有利肯定有弊咯,性能方面能 ...