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. kafka高可用探究

    kafka高可用探究 众所周知 kafka 的 topic 可以使用 --replication-factor 数和 partitions 数来保证服务的高可用性 问题发现 但在最近的运维过程中,3台 ...

  2. android 使用SQLite的基本操作

    Android操作数据库SQLite使用sql语句基本操作 1:自定义自己的SQLiteOpenHelper public class DBHelper extends SQLiteOpenHelpe ...

  3. 数据库MHA原理

    一.数据库的高可用MHA (1):详细的步骤 1.master mysql宕机了,MHA manager :无法连接master 2.MHA在S1 S2找一个延迟最小的slave,确定为未来的mast ...

  4. break和continue关键字

    什么是break break 跳出最里层的循环,并且继续执行该循环下面的语句 就是强制退出循环 示例 package struct; public class ForDemo05 { public s ...

  5. iOS Swift结构体与类的方法调度

    前言 hello,小伙伴们:在忙碌中闲暇之余给大家聊聊swift的知识点,今天给大家带来的是swift中结构体与类的方法调度详细区别,希望对你有所帮助,好了废话不用多说,接下来步入主题! 1.普通方法 ...

  6. Java(44)JDK新特性之函数式接口

    作者:季沐测试笔记 原文地址:https://www.cnblogs.com/testero/p/15201667.html 博客主页:https://www.cnblogs.com/testero ...

  7. 解决VS2015安装后stdio.h ucrtd.lib等文件无法识别问题,即include+lib环境变量配置

    转载自:http://blog.csdn.net/carl_qi/article/details/51171280 今天突然想在windows上装个 VS2015 玩玩,结果遇到了如下bug: 安装完 ...

  8. g++ 常用命令

    g++ --help

  9. C++ cin和while cin

    int main(){ string input; vector<string> arr; while(cin >> input) { cout << " ...

  10. Golang通脉之基础入门

    为什么要学 Go 性能优越感:Go 极其地快,其性能与 Java 或 C++相似.在使用中,Go 一般比 Python 要快 30 倍: 序列化/去序列化.排序和聚合中表现优异: 开发者效率较高:多种 ...