import numpy as np
Numpy 一元函数
对ndarray中的数据执行元素级运算的函数
np.abs(x) np.fabs(x)   计算数组各元素的绝对值
np.sqrt(x)   计算数组各元素的平方根
np.square(x)   计算数组各元素的的平方
np.log(x) np.log10(x) np.log2(x)   计算数组各元素的自然对数,10底对数和2底对数
np.ceil(x) np.floor(r)   计算数组各元素的ceiling值或floor值
np.rint(x)   计算数组各元素的四舍五入值
np.modf(x)   将数组各元素的小数和整数部分以两个独立数组形式返回
np.cos(x) np.cosh(x) np.sin(x) np.sinh(x) np.tan(x) np.tanh(x)
计算数组各元素的的普通型和双曲型三角函数
np.exp(x)   计算数组各元素的的指数值
np.sign(x)   计算数组各元素的的符号值,1(+),0,-1(-)
 
np.savetxt(frame,array,fmt='%.18e',delimiter=None)
  frame:文件,字符串或产生器,可以是.gz或.bz2的解压文件
  array:存入文件的数组
  fmt:写入文件的格式,例如:%d %.2f %.18e
  delimiter:分割字符串,默认是任何空格
  例:
a = np.arange(100).reshape(5,20)
np.savetxt("a.csv",a,fmt='%d',delimiter=',')
 
np.loadtxt(frame,dtype=np.float,delimiter=None,unpack=False)
  frame:文件,字符串或产生器,可以是.gz或.bz2的解压文件
  dtype:数据类型,可选
  delimiter:分割字符串,默认是任何空格
  nupack:如果True,读入属性将分别写入不同变量
 
CSV只能有效存储一维和二维数组
  np.savetxt() 和 np.loadtxt() 只能有效的存储一维和二维数组
 
------------------------------------------------------------------
 
a.tofile(frame,sep='',format='%s')
  frame:文件,字符串
  sep:数据分割字符串,如果是空字符串,写入文件为二进制
  format:写入数据的格式
 
np.fromfile(frame,dtype=float,count=-1,sep='')
  frame:文件,字符串
  dtype:读取的数据类型
  count:读入元素个数,-1表示读入整个文件
  sep:数据分割字符串,如果是空字符串,写入文件为二进制
 
  需要注意:
    给方法需要读取是知道存入文件是数组的维度和元素类型
    a.tofile() 和 np.framfile() 需要配合使用
    可以通过元数据文件来存储额外信息
 
NumPy的便捷文件存储
np.save(fname,array) 

  或

np.savez(fname,array)
  frame:文件名,以.npy为扩展名,压缩扩展名为.npz
  array:数组变量
 
  np.load(fname)
 
---------------------------------------------------------------------
 
NumPy的随机数函数
  random子库
    np.random
      np.random.rand(d0,d1,...,dn) # 根据d0到dn创建随机数数组,浮点数,[0,1),均匀分布
      np.random.randn(d0,d1,...,dn) # 根据d0到dn创建随机数数组,标准正态分布
      np.random.randint(low[,high,shepe]) # 根据shape创建随机整数或整数数组,范围是[low,high)
      seed(s) # 随机数种子,s是给定的种子值
    shuffle(a) # 根据数组a的第一轴进行随排列,改变数组x
    permytation(a) # 根据数组a的第一轴产生一个新的乱序数组,不给变数组x
    choice(a[,size,replace,p]) # 从一维数组a中以概率抽取元素,形成size形状新数组replace表示是否可以重用元素,默认为False
 
    nuiform(low,high,size) # 产生具有均匀分布的数组,low起始值,high结束值,size形状
    normal(loc,scale,size) # 产生具有正态分布的数组,loc均值,scale标准差,size形状
    poisson(lam,size) # 产生具有泊松分布的数组,lam随机事件发生率,size形状
 
-----------------------------------------------------------------------
 
Numpy 直接提供的统计类函数
  np.random的统计函数
    sum(a,axis=None) # 根据给定轴axis计算数组a 相关元素之和,axis整数或元组
    mean(a,axis=None) # 根据给定轴axis计算数组a 相关元素的期望,axis整数或元组
    average(a,axis=None,weights=None) # 根据给定轴axis计算数组a 相关元素的加权平均值
    std(a,axis=None) # 根据给定轴axis计算数组a 相关元素的标准差
    var(a,axis=None) # 根据给定轴axis计算数组a 相关元素的方差
 
  2:
    min(a) max(a) #计算数组a中元素的最小值,最大值
    argmin(a) argmax(a) #计算数组a中元素最小值,最大值的降一维后下标
    unravel_index(index,shape) #根据shape将一位下标index转换成多维下标
    ptp(a) #计算数组a中元素最大值与最小值的差
    median(a) #计算数组a中元素的中位数(中值)
 
 
---------------------------------------------------------------------------------------------
NumPy的梯度函数
  np.gradient(f) 计算数组f中元素的梯度,当f多维时,返回每个维度梯度
    梯度:连续值之间的变化率,即斜率
    XY坐标轴连续三个X坐标对应的y轴值:a,b,c,其中,b的梯度是:(c-a)/2
 
 
-------------------------------------------------------------------------------------
小结:
  数据存取与函数
    CSV文件
np.loadtxt()
np.savetxt()
 
  多维数据存取
a.tofile()
np.framfile()
np.save()
np.savez()
np.load()
 
  随机函数
np.random.rand()
np.random.randint()
np.random.shuffle()
np.random.choice()
np.random.randn()
np.random.seed()
np.random.permytation()
 
  NumPy的统计函数
np.sum()
mp.mean()
np.average()
np.std()
np.var()
np.median()
np.min()
np.max()
np.argmin()
np.argmax()
np.unravel_index()
np.ptp()
 
NumPy的梯度函数
np.gradient()
 
--------------------------------------------------------------------------------------
梯度的重构
  利用像素之间的梯度值和虚拟深度值对图像进行重构
  根据灰度变化来模拟人类视觉的明暗程度
 
  图像的RGB色彩模式
    图像一般使用RGB色彩模式,即每个像素点的颜色由红(R),绿(G),蓝(B)组成
    R 取值范围,0-255
    G 取值范围,0-255
    B 取值范围,0-255
 
  PIL库(Python Image Library)
    一个具有强大图像处理能力的第三方库
    from PIL import Image
    Image 是PIL库中代表一个图像的类(对象)
    图像是一个由像素组成的二维矩阵,每个元素是一个RGB

Numpy (嵩老师.)的更多相关文章

  1. Matplotlib(嵩老师.)

    Matplotlib 库的使用 Matplotlib 库有各种可视化类构成,内部结构复杂,受Matlab启发 matplotlib.pyplot是绘制个类可视化图形的命令子库相当于快捷方式   imp ...

  2. 【Python全栈-后端开发】嵩天老师-Django

    嵩天老师-Python云端系统开发入门教程(Django) 视频地址:https://www.bilibili.com/video/av19801429 课前知识储备: 一.课程介绍: 分久必合.合久 ...

  3. 数据分析与展示——NumPy库入门

    这是我学习北京理工大学嵩天老师的<Python数据分析与展示>课程的笔记.嵩老师的课程重点突出.层次分明,在这里特别感谢嵩老师的精彩讲解. NumPy库入门 数据的维度 维度是一组数据的组 ...

  4. Python自学日志_2017/9/05

    9月5日今天早晨学习了网易云课程<Python做Web工程师课程>提前预习课程<学会开发静态网页>.轻松的完成了第五节课的两个实战作业--感觉自己这几天的功夫没有白费,总算学会 ...

  5. python网络爬虫学习笔记(二)BeautifulSoup库

    Beautiful Soup库也称为beautiful4库.bs4库,它可用于解析HTML/XML,并将所有文件.字符串转换为'utf-8'编码.HTML/XML文档是与“标签树一一对应的.具体地说, ...

  6. python网络爬虫学习笔记(一)Request库

    一.Requests库的基本说明 引入Rquests库的代码如下 import requests 库中支持REQUEST, GET, HEAD, POST, PUT, PATCH, DELETE共7个 ...

  7. python操作文件

    OS模块 1.getcwd() 用来获取当前工作目录 >>> import os >>> os.getcwd() 'D:\\Postgraduate\\Python ...

  8. python3编码问题总结

    关于python3的编码类型,到底是怎么编码的,一直使我比较疑惑,在看了网上很多帖子之后,经过自己尝试与实验,将自己的总结写在下面,一是当做一次笔记,二是希望网友们能指正.仅供参考,欢迎指正,谢谢!! ...

  9. Spring第三天,详解Bean的生命周期,学会后让面试官无话可说!

    点击下方链接回顾往期 不要再说不会Spring了!Spring第一天,学会进大厂! Spring第二天,你必须知道容器注册组件的几种方式!学废它吊打面试官! 今天讲解Spring中Bean的生命周期. ...

随机推荐

  1. mybatis多种查询方法

    1. 查询单行,对象,并封装成一个对象 Employee getEmpById(Integer id); <select id="getEmpById" resultType ...

  2. 4.自定义类加载器实现及在tomcat中的应用

    了解了类加载器的双亲委派机制, 也知道了双亲委派机制的原理,接下来就是检验我们学习是否扎实了,来自定义一个类加载器 一. 回顾类加载器的原理 还是这张图,类加载器的入口是c++调用java代码创建了J ...

  3. Linear Referencing Tools(线性参考工具)

    线性参考工具 # Process: 创建路径 arcpy.CreateRoutes_lr("", "", 输出路径要素类, "LENGTH" ...

  4. Python基础 | 字符串格式化输出及print()函数介绍

    在写代码时,我们会经常与字符串打交道,Python中控制字符串格式通常有三种形式,分别是使用str%,str.format(),f-str,用法都差不多,但又有一些细微之差. 一起来看看吧~~~ 一. ...

  5. 【HMS Core 6.0全球上线】华为钥匙环服务,打造跨应用跨形态无缝登录体验

    华为钥匙环服务(Keyring),是HMS Core在安全领域开放的全新服务,为全球开发者提供用户认证凭据(以下简称"凭据")本地存储和跨应用.跨形态共享能力,帮助您在安卓应用.快 ...

  6. wget命令8种实用用法

    大家好,我是良许. wget 是一个可以从网络上下载文件的免费实用程序,它的工作原理是从 Internet 上获取数据,并将其保存到本地文件中或显示在你的终端上. 这实际上也是大家所使用的浏览器所做的 ...

  7. Go语言核心36讲(Go语言进阶技术六)--学习笔记

    12 | 使用函数的正确姿势 在前几期文章中,我们分了几次,把 Go 语言自身提供的,所有集合类的数据类型都讲了一遍,额外还讲了标准库的container包中的几个类型. 在几乎所有主流的编程语言中, ...

  8. 自动化键盘,python

    国际惯例先上源https://github.com/boppreh/keyboard#键盘输入 from pynput.keyboard import Key,Controller,Listener ...

  9. MySQL:基础语法-1

    MySQL:基础语法-1 记录一下 MySQL 基础的一些语法,便于查询,该部分内容主要是参考:bilibili 上 黑马程序员 的课程而做的笔记,由于时间有点久了,课程地址忘记了 关于数据库的安装操 ...

  10. 第六次Scrum Metting

    日期:2021年5月3日 会议主要内容概述:讨论前后端进度,前端各模块对接以及前后端对接. 一.进度情况 组员 负责 两日内已完成的工作 后两日计划完成的工作 工作中遇到的困难 徐宇龙 后端 数据模块 ...