新手入门学习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 相关文章推荐
Python中的面向对象编程详解(下)
Apr 13 Python
python中尾递归用法实例详解
Apr 28 Python
Python实现给qq邮箱发送邮件的方法
May 28 Python
Django接受前端数据的几种方法总结
Nov 04 Python
tensorflow建立一个简单的神经网络的方法
Feb 10 Python
Django使用Celery异步任务队列的使用
Mar 13 Python
Django实现表单验证
Sep 08 Python
python 模拟贷款卡号生成规则过程解析
Aug 30 Python
pytorch 图像预处理之减去均值,除以方差的实例
Jan 02 Python
Python smtp邮件发送模块用法教程
Jun 15 Python
如何利用python读取micaps文件详解
Oct 18 Python
matplotlib绘制鼠标的十字光标的实现(自定义方式,官方实例)
Jan 10 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
PHP查询数据库中满足条件的记录条数(两种实现方法)
2013/01/29 PHP
PHP判断文章里是否有图片的简单方法
2014/07/26 PHP
Laravel框架中扩展函数、扩展自定义类的方法
2014/09/04 PHP
Json_encode防止汉字转义成unicode的方法
2016/02/25 PHP
被jQuery折腾得半死,揭秘为何jQuery为何在IE/Firefox下均无法使用
2010/01/22 Javascript
jQuery之日期选择器的深入解析
2013/06/19 Javascript
jQuery实现类似淘宝购物车全选状态示例
2013/06/26 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
javascript结合canvas实现图片旋转效果
2015/05/03 Javascript
遮罩层点击按钮弹出并且具有拖动和关闭效果(两种方法)
2015/08/20 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
2016/07/07 Javascript
原生Javascript插件开发实践
2017/01/09 Javascript
js和jquery中获取非行间样式
2017/05/05 jQuery
JS实现从对象获取对象中单个键值的方法示例
2019/06/05 Javascript
Vue.js中provide/inject实现响应式数据更新的方法示例
2019/10/16 Javascript
vue项目中定义全局变量、函数的几种方法
2019/11/08 Javascript
JS实现无限轮播无倒退效果
2020/09/21 Javascript
nuxt.js 在middleware(中间件)中实现路由鉴权操作
2020/11/06 Javascript
selenium跳过webdriver检测并模拟登录淘宝
2019/06/12 Python
在python tkinter中Canvas实现进度条显示的方法
2019/06/14 Python
linux环境下Django的安装配置详解
2019/07/22 Python
python numpy之np.random的随机数函数使用介绍
2019/10/06 Python
python GUI库图形界面开发之PyQt5窗口类QMainWindow详细使用方法
2020/02/26 Python
jupyter notebook快速入门及使用详解
2020/11/13 Python
印度尼西亚综合购物网站:Lazada印尼
2016/09/07 全球购物
计算机科学与技术应届生求职信
2013/11/07 职场文书
购房意向书范本
2014/04/01 职场文书
继承权公证书
2014/04/09 职场文书
公证书标准格式
2014/04/10 职场文书
赔偿协议书范本
2014/04/15 职场文书
党员公开承诺书内容
2014/05/20 职场文书
工作失误检讨书范文
2015/01/26 职场文书
房屋所有权证明
2015/06/19 职场文书
2016年党员干部廉政承诺书
2016/03/24 职场文书
Java实战之用Swing实现通讯录管理系统
2021/06/13 Java/Android
MySQL学习必备条件查询数据
2022/03/25 MySQL