第六节,Python的科学计算包——Numpy
1、基本类型(array)
import numpy as np
a=[1,2,3,4]
b=np.array(a) #array([1,2,3.4])
type(b) #<type 'numpy.ndarray'>
b.shape #(4,) c=[[1,2],[3,4]] #二维列表
d=np.array(c) #二位numpy数组
d.shape #(2,2)
d.max(axis=0) #找维度0,列的最大值,即最后一个维度上的最大值,array([3,4])
d.max(axis=1) #找维度1,行的最大值,即倒数第二个维度上的最大值,array([2,4])
d.flatten() #展开一个Numpy数组为1维数组,array([1,2,3,4])
# 3*3的浮点型2维数组,并且初始化所有元素值为1
e = np.ones((3,3),dtype=np.float)
2、线性代数模块
在深度学习相关的数据处理核运算中,线性代数模块是其中最常用的,结合Numpy提供的基本函数,可以对向量、矩阵或是多维张量进行一些基本的运算。
import numpy as np
b=np.array([
[1,2,3],
[4,5,6],
[7,8,9]
])
c=np.array([1,0,1])
np.dot(b,c) #矩阵相乘,注意维度,array([4,10,16])
d=np.array([
[2,1],
[1,2]
])
'''
求正定矩阵的本征值和本征向量
本征值为u,array([3.,1.])
本征向量构成的二维array为v
eig()是一般情况的本征值分解,对于更常见的对称实数矩阵
eigh()更快更稳定,不过输出的值的顺序和eig()是相反的
'''
u,v=np.linalg.eig(d)
3、随机模块(random)
import numpy as np
import numpy.random as random
# 设置随机数种子
random.seed(42)
#产生一个1*3,【0,1】之间的浮点型随机数
random.rand(1,3)
#产生10个【1,6】之间的整型随机数
random.randint(1,6,10)
#产生2*5的标准正态分布样本
random.normal(size=(5,2))
# 对a进行in-place乱序,在训练数据时会用到。
random.shuffle(a)
第六节,Python的科学计算包——Numpy的更多相关文章
- Python下科学计算包numpy和SciPy的安装
转载自:http://blog.sina.com.cn/s/blog_62dfdc740101aoo6.html Python下大多数工具包的安装都很简单,只需要执行 “python setup.py ...
- Python下科学计算包numpy和SciPy的安装【原创】
Python下大多数工具包的安装都很简单,只需要执行 "python setup.py install"命令即可.然而,由于SciPy和numpy这两个科学计算包的依赖关系较多,安 ...
- 动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题
动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题 D3 ...
- Python的科学计算包matplotlib setup
回想起大学四年 专业一直使用matlab,然而我却没在PC上装成功过,以前懒于思考这种数学工具的作用,直到最近,大学同学研究生要毕业了,几经交流,和自己阅读了一些机器学习的教材之后,发觉科学计算包和画 ...
- python科学计算包numpy用法(一)
numpy是python中一个用来做科学计算的包,用起来十分方便,下面是我总结的numpy的用法: 1.如何创建矩阵 创建矩阵有很多种方法,主要包括以下几种: 通过array函数创建 >> ...
- 科学计算包Numpy
Numpy 用于科学计算的python模块,提供了Python中没有的数组对象,支持N维数组运算.处理大型矩阵.成熟的广播函数库.矢量运算.线性代数.傅里叶变换以及随机数生成等功能,并可与C++.FO ...
- Linux下Python科学计算包numpy和SciPy的安装
系统环境: OS:RedHat5 Python版本:Python2.7.3 gcc版本:4.1.2 各个安装包版本: scipy-0.11.0 numpy-1.6.2 nose-1.2.1 lap ...
- Python科学计算包模块的安装(ubuntu)
Python的科学计算包设计到C语言代码的编译,采用pip的方式安装会出现错误. 一种简单的方式是采用的集成包,具体的步骤参考:https://www.continuum.io/downloads#_ ...
- Windows下安装python的scipy等科学计算包(转)
如果要使用python进行科学计算.数据分析等,一定要安装scipy.seaborn.numpy等等包. 但Windows下安装python的第三方库经常会出现问题.此前,已介绍过Windows下如何 ...
随机推荐
- 写个.net开发者的Linux迁移指南
前言 为什么要迁移到Linux 首先我个人还是有点软件洁癖,以前是穷酸学生的时候也是用盗版的用户,后来在知乎被洗脑终于有了点版权意识.然后便有了能用开源软件的就用开源,实在不能就选社区版或者免费版.于 ...
- 《App架构实践指南》
推荐书籍 <App 架构实践指南>
- VSCode 必装的 10 个高效开发插件
本文介绍了目前前端开发最受欢迎的开发工具 VSCode 必装的 10 个开发插件,用于大大提高软件开发的效率. VSCode 的基本使用可以参考我的原创视频教程「VSCode 高效开发必装插件」. V ...
- 关于表单元素的name及HTML中的id
这种在上高级WEB课时,老师为表单元素赋了name值,之后直接在JS中使用该值而不需要使用document.get...来获取了,例: <!DOCTYPE html> <html&g ...
- 《Effective C++》实现:条款26-条款31
条款26:尽可能延后变量定义式的出现时间 C++推荐在使用对象前才定义对象(调用构造函数赋初值) 只在循环中使用的变量定义在循环内部(除非"赋值"成本低于"构造+析构&q ...
- 老婆大人 split,slice,splice,replace的用法
split()方法用于把一个字符串分割成字符串数组 str.split("字符串/正则表达式从该参数制定额地方分割str",可选,可指定返回数组的最大长度,如果没设置参数,整个字符 ...
- php curl报错:417 - Expectation Failed
当我在post提交的数据增加一段内容后会报错:417 - Expectation Failed. 查资料发现在使用curl做POST时,当post的数据大于1024字节时,curl并不会直接发起pos ...
- Android popupwindow 失去焦点或者点击空白区域时消失的解决方法
先来看下Android API 的这个Methods: public void setOutsideTouchable (boolean touchable) Controls whether the ...
- Codeforces 1077E Thematic Contests(二分)
题目链接:Thematic Contests 题意:给出n道有类型的题目,每天组织一场专题比赛,该天题目数量必须是前一天的2倍,第一天的题目数量可以任意选择,求能消耗的最多题目数量. 题解:先整理成不 ...
- nginx设置目录浏览及解决中文乱码问题
在Nginx下默认是不允许列出整个目录的.如需开启此功能,先打开nginx.conf文件,在location server 或 http段中加入相关参数. http { include mime.ty ...