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库更方便. 定义数 ...
随机推荐
- 08.JS单词整理
以下为按照文章顺序简单整理的JS单词, 注意:是JS单词注释,部分与英文不符 01.JS语法规范.变量与常量 console——控制台 log——日志 var——变量 variable变量,变化 co ...
- vue框架中props的typescript用法
vue框架中props的typescript用法 在vue中使用typescript时,需要引入vue-property-decorator库来兼容格式. javascript写法 Vue.compo ...
- 算法训练 最大获利 注意数据规模(long long)
资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 Chakra是一位年轻有为的企业家,最近他在进军餐饮行业.他在各地开拓市场,共买下了N个饭店.在初期的市场调研中,他将一天划分为M ...
- servlet中使用request.getHeader("referer")获取页面从哪跳转过来的
问题 servlet中使用request.getHeader("referer")获取页面从哪跳转过来的,利用这个方法可以判断网页是否正常登录.我做了一个javaweb小项目,其中 ...
- 树莓派搭载CentOS7系统初始配置
系统属性: 树莓派型号:3b SD:32GB 系统:CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-1908-sda.raw 开机配置: 连接树莓派: 配件 ...
- 笔记本磁盘中OEM分区的使用
(1).开机进入系统前,按F8,进入Windows 10的高级启动选项,选择“修复计算机”. (2).选择键盘输入方法. (3).如果有管理员密码,需要输入:如果没有设置密码,直接“确定”即可. (4 ...
- Programming on C 学习笔记
目录 include不同的声明方式有什么不同? if defined 与 #ifdef 有什么区别? undef 是怎么工作的? 如何利用 typedef 来定义数组? 枚举中,如果有个元素被赋予值, ...
- #AcWing系列课程Level-2笔记——2. 归并排序算法
归并排序算法 编写归并排序,记住下面的思路,代码也就游刃有余了! 1.首先确定数组的中间位置的分界点(下标),也就是mid=(left+right)>>1,分成left,right两段. ...
- 数据结构(集合)学习之Set
集合 框架关系图: Collection接口下面有三个子接口:List.Set.Queue.此篇是关于Set<E>的简单学习总结. 补充:HashTable父类是Dictionary,不是 ...
- 【终端命令】SSH服务,远程登录
一.SSH协议 在Linux中SSH是非常常用的工具,通过SSH客户端我们可以连接到运行了SSH服务器的远程机器上. SSH客户端是一种 使用"Secure Shell (SSH)" ...