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库更方便. 定义数 ...
随机推荐
- while 循环 实例
/*int i=0; while(i<100){// 循环条件 while先执行后循环 printf("while第%d遍循环体\n",i);//循环体 i++; } */ ...
- 「Flink」理解流式处理重要概念
什么是流式处理呢? 这个问题其实我们大部分时候是没有考虑过的,大多数,我们是把流式处理和实时计算放在一起来说的.我们先来了解下,什么是数据流. 数据流(事件流) 数据流是无边界数据集的抽象 我们之前接 ...
- 单源最短路 Bellman-Ford算法(有向图)
// 单源最短路问题 // Bellman-Ford算法 // 复杂度O(V*E) //! 可以判断负圈 #include <cstdio> #include <iostream&g ...
- Mac Docker Desktop "Mounts denied: EOF."解决方法
环境 系统: Mac OS Catalina Docker Desktop: 问题描述 在Mac环境下创建容器时用"-v"参数挂载目录出现"docker: Error r ...
- 1.Android网络编程-HTML介绍
1.HTML介绍 超文本标记语言(HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言. 在Eclipse下则可以使用自带的浏览器浏览html: 2.H ...
- ES6中map数据结构
key值可以任意值或对象,value值可以是任意值或对象 let json={ name:'eternity', skill:'java' }; let map=new Map(); map.set( ...
- 解决Spring Security自定义filter重复执行问题
今天做项目的时候,发现每次拦截器日志都会打两遍,很纳闷,怀疑是Filter被执行了两遍.结果debug之后发现还真是!记录一下这个神奇的BUG! 问题描述 项目中使用的是Spring-security ...
- Java Web 笔记(3)
8.JSP 8.1.什么是JSP Java Server Pages : Java服务器端页面,也和Servlet一样,用于动态Web技术! 最大的特点: 写JSP就像在写HTML 区别: HTML只 ...
- 容错保护机制:Spring Cloud Hystrix
最近在学习Spring Cloud的知识,现将容错保护机制Spring Cloud Hystrix 的相关知识笔记整理如下.[采用 oneNote格式排版]
- 解决问题:当redis服务端断开的时候`进程会崩溃(转载6哥笔记)
package main import ( "fmt" "github.com/astaxie/beego/logs" "github.com/gar ...