搞不懂博客园表格的排版。。。

说明:

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 (lowhigh=Nonesize=Nonedtype='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数组基本操作的更多相关文章

  1. 解决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 ...

  2. Python开发:NumPy学习(一)ndarray数组

    一.数据维度 一个数据表达一个含义,一组数据表达一个或多个含义. 数据维度概念:一组数据的组织形式,其中有一维数据.二维数据.多维数据.高维数据. 1.  一维数据 一维数据由对等关系的有序或无序数据 ...

  3. Numpy的ndarray数组基础

    NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引. ndarray 对象是用于存放同类型元素的多维数组. 1.数组的 ...

  4. 3.2Python数据处理篇之Numpy系列(二)--- ndarray数组的创建与变换

    目录 (一)ndarray数组的创建 1.从列表以元组中创建: 2.使用函数创建: (二)ndarray数组的变换 1.维度的变换: 2.类型的变换: 目录: 1.ndarray数组的创建 2.nda ...

  5. Numpy数组基本操作(数组索引,数组切片以及数组的形状,数组的拼接与分裂)

    一:数组的属性 每个数组都有它的属性,可分为:ndim(数组的维度),shape(数组每个维度的大小),size(数组的总大小),dtype(数组数据的类型) 二:数组索引 和python列表一样,N ...

  6. Numpy 创建数组

    ndarray 数组除了可以使用底层 ndarray 构造器来创建外, 也可以通过以下几种方式来创建. numpy.empty numpy.empty 方法用来创建一个指定形状(shape),数据类型 ...

  7. NumPy Ndarray 对象

    NumPy Ndarray 对象 NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引. ndarray 对象是用于存放 ...

  8. numpy.random.random & numpy.ndarray.astype & numpy.arange

    今天看到这样一句代码: xb = np.random.random((nb, d)).astype('float32') #创建一个二维随机数矩阵(nb行d列) xb[:, 0] += np.aran ...

  9. Python中Numpy ndarray的使用

    本文主讲Python中Numpy数组的类型.全0全1数组的生成.随机数组.数组操作.矩阵的简单运算.矩阵的数学运算. 尽管可以用python中list嵌套来模拟矩阵,但使用Numpy库更方便. 定义数 ...

随机推荐

  1. mybatis 通过配置父类数据源连接和关闭数据,进行junit单元测试

    来源:https://blog.csdn.net/Bigbig_lyx/article/details/80646005 解决问题,单元测试没经过单独配置,每个测试方法中要添加配置数据源 一:配置父类 ...

  2. go实现java虚拟机01

    前段时间看了一本书,说的是用go语言实现java虚拟机,很有意思,于是就花了一段时间学习了一下go语言,虽然对go的底层理解不是很深,但是写代码还是可以的,就当做个读书笔记吧! 链接在这里,另外还有一 ...

  3. 「Spark」Spark SQL Thrift Server运行方式

    Spark SQL可以使用JDBC/ODBC或命令行接口充当分布式查询引擎.这种模式,用户或者应用程序可以直接与Spark SQL交互,以运行SQL查询,无需编写任何代码. Spark SQL提供两种 ...

  4. sed命令简介

    sed处理时,有2个缓冲区:[pattern space]和[hold space] sed执行过程: 先读入一行,去掉尾部换行符,存入[pattern space],执行编辑命令. 处理完毕,除非加 ...

  5. 转载:字符编码简介 ASCII UTF-8 ISO8859-1

    字符编码简介 ASCII UTF-8 ISO8859-1 博客分类: 电脑综合知识 XP数据结构Windows  计算机中的一切都是以数字来表示的,字符同样如此.字符编码就是将字符集编码成为数字序列, ...

  6. \n不换行

    \n在js中表示换行,<br/>在html中表示换行,所以如果在设置innerHtml值时使用  \n  ,那么在页面上并不会显示换行,而在设置innerText值时使用  \n  就会显 ...

  7. neo4j学习摘要

    参考 链接:https://gitbook.cn/books/5a33782c5778440a9d906017/index.html

  8. 没有正确配置扫描包,提示spring的bean不存在

    如下提示的解决方案: <!-- 扫描org.infor包下面的java文件,有Spring的相关注解的类,则把这些类注册为Spring的bean -->  <context:comp ...

  9. akka设计模式系列-消息模型(续)

    在之前的akka设计模式系列-消息模型中,我们介绍了akka的消息设计方案,但随着实践的深入,发现了一些问题,这里重新梳理一下设计方法,避免之前的错误.不当的观点给大家带来误解. 命令和事件 我们仍然 ...

  10. day9 修改文件

    # 修改文件 # 文件是不能修改 with open('小护士班主任', mode='r', encoding='utf-') as f, open('小护士班主任.bak', 'w', encodi ...