第六节,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下如何 ...
随机推荐
- STL中的set使用方法详细!!!!
1.关于set C++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构 ...
- python 通过 http、dns、icmp判断网络状态
#http使用requests发包bs4解析,dns.icmp 使用scapy发包import time import threading import requests,bs4 from scapy ...
- openstack网络基础:网络叠加模式VLAN、VxLAN、GRE
什么是叠加网络1.一个数据包(或帧)封装在另一个数据包内;被封装的包转发到隧道端点后再被拆装.2.叠加网络就是使用这种所谓“包内之包”的技术安全地将一个网络隐藏在另一个 网络中,然后将网络区段进行迁移 ...
- 求100之内的素质并输出(最优算法)-PHP面试题
曾经第一次面试题中的题目, 今天碰巧看到整理一下 当时用了最基本的算法写出来了, 两个for循环, 一个一个取余, 是质数就放进结果数组中 代码如下, 检查代码运行时间的代码是来对比三种不同算法的优劣 ...
- nginx.conf配置详解
######Nginx配置文件nginx.conf中文详解##### #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_ ...
- Qin Shi Huang's National Road System HDU - 4081(树形dp+最小生成树)
Qin Shi Huang's National Road System HDU - 4081 感觉这道题和hdu4756很像... 求最小生成树里面删去一边E1 再加一边E2 求该边两顶点权值和除以 ...
- luogu P1250 种树
我来总结一下最常用的两种办法 1.贪心 2.差分约束 那么我们先来讲,贪心版<种树> 大家可能知道有一个题和这个类似,那个是钉钉子而这个是种树 我们可以借用钉钉子的思路来想,首先这个是让你 ...
- [测试篇]MarkDown之代码块行号+折叠图片
对比测试代码编号 $(function(){ $('pre code').each(function(){ texts = $(this).text().replace(/&(?!#?[a-z ...
- MYSQL IN 出现的慢查询问题
IN = https://blog.csdn.net/solmyr_biti/article/details/54293492 https://www.cnblogs.com/wxw16/p/6105 ...
- JSON.stringify() 和 JSON.parse()
stringify()用于从一个对象解析出字符串,如 var obj = {x: 1, y: 2 } console.log(JSON.stringify(obj)) //{"x" ...