新手入门学习python Numpy基础操作


Posted in Python onMarch 02, 2020

NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。是在学习机器学习、深度学习之前应该掌握的一个非常基本且实用的Python库。

导入库,创建数组

import numpy as np
a = np.arraya = np.array([0, 1, 2, 3, 4] )  #使用array函数

a = np.array([[11, 12, 13, 14, 15],
          [16, 17, 18, 19, 20],
          [21, 22, 23, 24, 25],
          [26, 27, 28 ,29, 30],
          [31, 32, 33, 34, 35]])  #创建多维数组
a=np.zeros((2, 3))  #创建两行三列的0填充的矩阵,ones(shape)则是创建1填充的,np.full((m,n)8) m行n列的全部是8的参数
a=np.linspace(1., 4., 6) #创建1到4之间,共6个元素的等值间距的数组
a=np.arange(起,止,步长) #创建 从起到至,按步长排列的数组
a= np.indices((3,3)) #创建一个堆叠的更高维度的数组
a=np.mat() #创建矩阵,array只能从列表中生成,而mat可以从字符串或者列表中生成,比如mat("1,2;3,4"),而array([1,2,3,4]),mat是矩阵、array是数组(假矩阵)

基本操作符

np中矩阵之间加减乘除是对应元素的+、-、*、/, 【注】一个数组加一个整数,则是对该数组每个元素加该整数,这个过程成为数组的广播,如果阶数不同则是每行与每行对应相乘。

mat的矩阵若是使用*则是矩阵相乘,而非对应元素相乘

其他的计算函数:

  • multiply(),数组或矩阵对应位置相乘
  • dot()函数,a.dot(b)表示ab矩阵相乘,数学上的相乘。
  • sum() #求和,可使用axis限定方向,0为纵向,1为横向。[[...],[...],[...]]这样横着放求得时候他也会默认为二维方阵,最后结果是[...]
  • min() #找出最小的元素
  • max() #找出最大的元素
  • mean() #返回均值
  • std() #返回标准方差
  • var() #返回方差
  • cumprod() #原数组该位置的前几项元素乘 (累乘数组),可以使用axis指定方向,0表示纵向,1表示横向,默认横向
  • cumsum() #原数组该位置的前几项元素和 (累加数组)
  • ptp() #返回最大值减去最小值

np的索引和切片

import numpy as np
data = np.arange(12).reshape((3, 4))
print(data)
##对数组元素进行索引和切片
# 1. 取第一行的数据
print(data[0])

# 2. 取第一列的数据
print(data.T[0])
print(data[:, 1])

#3. 获取多行
print(data[:2])

# 4. 获取多行列
print(data.T[:2])
print(data[:, :2])


# 5. 获取指定行的前几列;
print(data)
print(data[[0,2], :2])
print(data[:2, [0,2]])

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
linux系统使用python监测网络接口获取网络的输入输出
Jan 15 Python
基于Python实现的扫雷游戏实例代码
Aug 01 Python
详解Python3.1版本带来的核心变化
Apr 07 Python
python 实时遍历日志文件
Apr 12 Python
Python之日期与时间处理模块(date和datetime)
Feb 16 Python
python-opencv在有噪音的情况下提取图像的轮廓实例
Aug 30 Python
python中文乱码不着急,先看懂字节和字符
Dec 20 Python
python opencv之SIFT算法示例
Feb 24 Python
Python装饰器实现方法及应用场景详解
Mar 26 Python
Jupyter notebook无法导入第三方模块的解决方式
Apr 15 Python
python实现双人五子棋(终端版)
Dec 30 Python
python编写扎金花小程序的实例代码
Feb 23 Python
python中数据库like模糊查询方式
Mar 02 #Python
python读取文件指定行内容实例讲解
Mar 02 #Python
python GUI库图形界面开发之PyQt5选项卡控件QTabWidget详细使用方法与实例
Mar 01 #Python
python判断两个序列的成员是否一样的实例代码
Mar 01 #Python
python GUI库图形界面开发之PyQt5表格控件QTableView详细使用方法与实例
Mar 01 #Python
Python猜数字算法题详解
Mar 01 #Python
Python paramiko 模块浅谈与SSH主要功能模拟解析
Feb 29 #Python
You might like
CI框架扩展系统核心类的方法分析
2016/05/23 PHP
关于php中的json_encode()和json_decode()函数的一些说明
2016/11/20 PHP
PHP中in_array的隐式转换的解决方法
2018/03/06 PHP
js对数字的格式化使用说明
2011/01/12 Javascript
通过jQuery源码学习javascript(一)
2012/12/27 Javascript
Dom 学习总结以及实例的使用介绍
2013/04/24 Javascript
解析DHTML,JavaScript,DOM,BOM以及WEB标准的描述
2013/06/19 Javascript
js 窗口抖动示例
2013/09/04 Javascript
js中replace的用法总结
2013/12/27 Javascript
把Node.js程序加入服务实现随机启动
2015/06/25 Javascript
JS实现无缝循环marquee滚动效果
2017/05/22 Javascript
原生js 封装get ,post, delete 请求的实例
2017/08/11 Javascript
基于jQuery的左滑出现删除按钮的示例
2017/08/29 jQuery
使用Angular-CLI构建NPM包的方法
2018/09/07 Javascript
vue实现移动端轻量日期组件不依赖第三方库的方法
2019/04/28 Javascript
javaScript把其它类型转换为Number类型
2019/10/13 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
详解vue 中 scoped 样式作用域的规则
2020/09/14 Javascript
Python和perl实现批量对目录下电子书文件重命名的代码分享
2014/11/21 Python
深入浅析python定时杀进程
2016/06/06 Python
Python如何实现MySQL实例初始化详解
2017/11/06 Python
python方向键控制上下左右代码
2018/01/20 Python
Selenium 模拟浏览器动态加载页面的实现方法
2018/05/16 Python
python 发送get请求接口详解
2020/11/17 Python
Asics日本官网:鬼冢八喜郎创立的跑鞋运动品牌
2017/10/18 全球购物
DeinDesign德国:设计自己的手机壳
2019/12/14 全球购物
兰蔻法国官方网站:Lancôme法国
2020/02/22 全球购物
Java的基础面试题附答案
2016/01/10 面试题
应届生程序员求职信
2013/11/05 职场文书
路政管理专业个人自荐信范文
2013/11/30 职场文书
大学生创业感言
2014/01/25 职场文书
优秀德育工作者事迹材料
2014/05/07 职场文书
高等教育学专业自荐书
2014/06/17 职场文书
幼儿园科学课教学反思
2016/03/03 职场文书
建筑工程挂靠协议书
2016/03/23 职场文书
pytorch查看网络参数显存占用量等操作
2021/05/12 Python