【笔记】numpy.array的常用基本运算以及对数据的操作
numpy.array的基本运算以及对数据的操作
设置一个问题,例如
这种只需要基本的运算就可以实现
类似的
numpy对向量的运算进行了优化,速度是相当快的,这种被称为universal functions
可以使用+,-,,/,//, *(两个星号),%,1/(/表示浮点除,//表示整数除,%表示取余,**表示平方,1/表示倒数)
特殊的运算
像是abs(绝对值),三角函数(sin,cos,tan等),exp(所有元素取e的x次方),log,log2,log10
矩阵之间的运算,要保证可以运算
常规加减没问题,在矩阵相乘的时候不能使用*,要使用.dot(),转置矩阵可使用.T
向量与矩阵的运算
正常的加减法,虽然数学意义上不存在,但是是可以计算出来的,通过堆叠可以验证出来计算的结果
不同行列数的矩阵相乘,也是使用dot来操作,不同的是,numpy会自动将结构修改,使之变成符合运算规律的计算
(A.dot(V),将v变成了一个2*1的矩阵列向量)
矩阵的逆
使用linalg.inv
由于很多时候只有方阵才能进行计算,那么我们就需要使用linalg.pinv来设置伪逆矩阵
聚合操作
聚合操作
即将一组值变成一个值
像是求和
使用sum或者np.sum即可
两者的区别就是,原生的sum效率是比np.sum的效率低的
对二维数组也可以
当设置成axis=0时,会沿着行的方向进行运算(垂直方向)
同理,axis=1时,沿着列方向(水平方向)
求一个组的最小值或最大值
乘积(计算出来不对,感觉哪里出了问题),均值,中位数
百分数
q=50意味着百分之50的数(即中位数)
通过for循环输出各个百分位点
方差和标准差
索引(arg运算)
索引
当想要获取获取的数的位置时,可以使用arg后接运算
这将返回一个索引值,这个值的位置即为数值位置
argmin
argmax
排序以及使用索引
首先将创建出的乱序
(如果只是对np.sort操作,这只是将顺序显示出来,并没有改变原有的顺序)
对x进行sort操作的话,会直接改变
对二维数组来说,相同
注意:默认的axis为1
使用argsort一样,返回的是索引
使用索引排序
使用argsort显示出来的是原有数据的索引值的排序顺序
(像是索引为6的值是0,1的索引值为13,以此类推)
快速排序的partition操作(对象,标定点)
如果使用的是argpartition,则返回的是索引值,对二维数组同样适用
比较(包含fancy indexing)
Fancy indexing
想要得到指定的索引值的数据(在需要非等步长的时候)
可以使用ind
我们还可以使用这种方法对二维的索引进行一个使用
通过二维的索引,对原有数据引用,是指形成根据索引排布的一个二维矩阵
对二维数组来说
同样可以使用
我们想要得到对应的行列元素,可进行相应的操作
以上是数值方面的
有时候我们还会遇到其他类型的数据
比如在批量比较之后返回的布尔数组
关于numpy.array的比较
我们可以使用很多的符号,像是<,>,<=,>=,==,!=等等
其返回的就是布尔值
同时,我们也可以结合之前的运算符来构成更为复杂的算式
同样,对二维数组一样适用
对整体进行(对数组和矩阵都适用)
count_nonzero,不为零的数量
any,是有一个为true,则返回为true
all,是有全部为true,则返回为true
通过axis=1,对列这一行进行比较
同样的,我们可以对这些进行组合
在两个数组数据进行比较时,使用位运算符&(与),|(或),~(非)
这种方法可以很直观的显示出所需要的值
像是需要数组中小于5的,需要数组中为偶数的
对二维数组来说一样可以
如果我们需要抽出一些行,这些行满足的特点是最后一列可以被三整除,那么我们要先选择出第三列,然后进行整除,最后抽出来
【笔记】numpy.array的常用基本运算以及对数据的操作的更多相关文章
- 【SQL必知必会笔记(3)】SELECT语句的WHERE子句数据过滤操作
上个笔记主要介绍了利用SELECT语句检索单个/多个/所有列,并利用DISTINCT关键字检索具有唯一性的值.利用LIMIT/OFFSET子句限制结果:以及利用ORDER BY子句排序检索出的数据,主 ...
- mysql笔记1—安装、配置和基础的数据表操作
本篇笔记主要分为两部分: 1,安装完毕之后的简单配置 2,数据的类型.简单的数据表操作命令 一.mysql安装完毕之后 windows和linux环境,除mysql的安装.配置有所不同,其他操作一样, ...
- Numpy np.array 相关常用操作学习笔记
1.np.array构造函数 用法:np.array([1,2,3,4,5]) 1.1 numpy array 和 python list 有什么区别? 标准Python的列表(list)中,元素本质 ...
- 【笔记】numpy.array基础(1)
numpy.array基础 使用numpy.__version__可以检查numpy的版本 当然也可以直接使用命令行检查numpy版本 也可以用来简化引用,使用as python list特点 num ...
- python numpy array 的一些问题
1 将list转换成array 如果list的嵌套数组是不规整的,如 a = [[1,2], [3,4,5]] 则a = numpy.array(a)之后 a的type是ndarray,但是a中得元素 ...
- 操作 numpy 数组的常用函数
操作 numpy 数组的常用函数 where 使用 where 函数能将索引掩码转换成索引位置: indices = where(mask) indices => (array([11, 12, ...
- Python Numpy Array
Numpy 是Python中数据科学中的核心组件,它给我们提供了多维度高性能数组对象. Arrays Numpy.array dtype 变量 dtype变量,用来存放数据类型, 创建数组时可以同 ...
- NumPy和Pandas常用库
NumPy和Pandas常用库 1.NumPy NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组. 用于对整组数 ...
- [学习笔记] Numpy基础 系统学习
[学习笔记] Numpy基础 上专业选修<数据分析程序设计>课程,老师串讲了Numpy基础,边听边用jupyter敲了下--理解+笔记. 老师讲的很全很系统,有些点没有记录,在PPT里就不 ...
随机推荐
- 『无为则无心』Python函数 — 27、Python函数的返回值
目录 1.返回值概念 2.return关键字的作用 3.返回值可以返回的数据类型 4.函数如何返回多个值 5.fn5 和 fn5()的区别 6.总结: 1.返回值概念 例如:我们去超市购物,比如买饮料 ...
- Spring:Spring的各jar包依赖及作用详解
spring-core.jar(必须有的核心jar包) 这个jar 文件包含Spring 框架基本的核心工具类.Spring 其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己 ...
- centos下nodejs,npm的安装和nodejs的升级
安装: sudo yum install epel-release sudo yum install nodejs node -v yum install -y npm --enablerepo=ep ...
- inux下查看最消耗CPU、内存的进程
1.CPU占用最多的前10个进程: ps auxw|head -1;ps auxw|sort -rn -k3|head -10 2.内存消耗最多的前10个进程 ps auxw|head -1;ps a ...
- 在docker的镜像中安装vim
在使用docker容器时,有时候里边没有安装vim,敲vim命令时提示说:vim: command not found,这个时候就需要安装vim,可是当你敲apt-get install vim命令时 ...
- linux 生成密钥
p.p1 { margin: 0; font: 16px "Helvetica Neue" } span.s1 { font: 16px ".PingFang SC&qu ...
- 淘宝的sign参数js逆向
前言:现在网站都有很强的反爬机制,都是非常常见的是用js前端加密参数,所以不得不去分析和逆向js混淆后的代码 一. 打开天猫或淘宝,shift+ctrl+F12全局搜索sign参数. 这里发现很多地方 ...
- ESP32使用SPIFFS文件系统笔记
基于ESP-IDF4.1 1 #include <stdio.h> 2 #include <string.h> 3 #include <sys/unistd.h> ...
- printf函数返回值
//返回值:正确返回输出的字符总数,错误返回负值,与此同时,输入输出流错误标志将被置值,可由指示器ferror来检查输入输出流的错误标志. #include <stdio.h> #defi ...
- Kubernetes部署-二进制方式
环境配置 一.系统环境 序号 用途 系统 Docker版本 IP地址 1 Master CentOS Linux release 7.6.1810 (Core) 19.03.4 192.168.0.1 ...