理解数学公式与numpy矩阵运算
1.矩阵的初始化
(1)创建一个 3*5的全0矩阵和全1矩阵
import numpy as np
myzero = np.zeros([3,5])
print myzero
myones = np.ones([3,5])
print myones
(2)生成随机矩阵
myrand = np.random.rand(3,4)
print myrand
(3)单位阵
myeye = np.eye(3)
print myeye
2. 矩阵的元素运算
矩阵的元素运算是指矩阵在元素级别的加、减、乘、除运算。
from numpy import * # 导入 NumPy包
(1)元素的加和相减
条件:矩阵的行数和列数必须相同。
数学公式:(A±B)i‚j = Ai,j ± Bi,j 。
myones = ones([3,3])
myeye = eye(3)
print myones
print myones-myeye
(2)矩阵数乘:一个数乘一个矩阵
数学公式:(cA)i,j = c * Ai,j。
mymatrix = mat([1,2,3],[4,5,6],[7,8,9])
a = 10
print a * mymatrix
(3)矩阵的所有元素求和:
数学公式: 打不出来
mymatrix = mat([1,2,3],[4,5,6],[7,8,9])
print sum(mymatrix)
(4)矩阵各元素的积:矩阵的店乘同维对应元素的相乘。当矩阵的维度不同时,会根据一定的广播规则将维度扩充到一致的形式。
mymatrix = mat([1,2,3],[4,5,6],[7,8,9])
mymatrix2 = 1.5*ones([3,3])
print multiply(mymatrix,mymatrix2)
(5)矩阵各元素的n次幂: n = 2
mylist = mat([[1,2,3],[4,5,6],[7,8,9]])
print power(mylist,2)
3、矩阵的乘法:矩阵乘矩阵
from numpy import *
mymatrix = mat([[1,2,3],[4,5,6],[7,8,9]])
mymatrix2 = mat([[1],[2],[3]])
print mymatrix*mymatrix2
4、矩阵的转置
from numpy import *
mymatrix =- mat([[1,2,3],[4,5,6],[7,8,9]])
print mymatrix.T
mymatrix.transpose()
print mymatrix
5、矩阵的其他操作:行列数、切片、复制、比较
from numpy import *
mymatix = mat([[1,2,3],[4,5,6],[7,8,9]])
[m,n] = shape(mymatrix) print "矩阵的行数和列数:", m , n myscl1 = mymatrix[0]
print "按行切片:" , myscl1 myscl2 = muymatrix.T[0]
print "按列切片:" , myscl2 mycpmat = mymatrix.copy()
print "复制矩阵:\n " , mycpmat print "矩阵元素的比较:\n",mymatrix < mymatrix.T
理解数学公式与numpy矩阵运算的更多相关文章
- python中numpy矩阵运算操作大全(非常全)!
python中numpy矩阵运算操作大全(非常全) //2019.07.10晚python矩阵运算大全1.矩阵的输出形式:对于任何一个矩阵,python输出的模板是:import numpy as n ...
- [Python学习] python 科学计算库NumPy—矩阵运算
NumPy库的核心是矩阵及其运算. 使用array()函数可以将python的array_like数据转变成数组形式,使用matrix()函数转变成矩阵形式. 基于习惯,在实际使用中较常用array而 ...
- numpy 矩阵运算
8.2 矩阵(Matrix)对象 Matrix类型继承于ndarray类型,因此含有ndarray的所有数据属性和方法.Matrix类型与ndarray类型有六个重要的不同点,当你当Matrix对象当 ...
- numpy矩阵运算--矩阵乘法
1)元素对应相乘,使用 multiply 函数或 * 运算符来实现 a = np.array([2,2,2])b = np.array([3,3,3]) c1 = a*a c1 array([4, 4 ...
- 矩阵基本运算的 Python 实现
from...import与import区别在于import直接导入指定的库,而from....import则是从指定的库中导入指定的模块 import...as则是将import A as B,给予 ...
- 对Numpy数组按axis运算的理解
Python的Numpy数组运算中,有时会出现按axis进行运算的情况,如 >>> x = np.array([[1, 1], [2, 2]]) >>> x arr ...
- 给深度学习入门者的Python快速教程 - numpy和Matplotlib篇
始终无法有效把word排版好的粘贴过来,排版更佳版本请见知乎文章: https://zhuanlan.zhihu.com/p/24309547 实在搞不定博客园的排版,排版更佳的版本在: 给深度学习入 ...
- 【机器学习_7】numpy
1. 定义 入门选手不抄作业了,先简单理解下,numpy最大的应用大概是方便做数学运算啥的,功劳在于一个叫ndarray(多维数组)的数据类型.numpy本身没有强大分析能力,只是pandas的基础啥 ...
- 机器学习 支持向量机(SVM) 从理论到放弃,从代码到理解
基本概念 支持向量机(support vector machines,SVM)是一种二分类模型,它的基本模型是定义在特征空间上的间隔最大的线性分类器.支持向量机还包括核技巧,这使它成为实质上的非线性分 ...
随机推荐
- [Bzoj3687]简单题(bitset)
3687: 简单题 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 1150 Solved: 565[Submit][Status][Discuss] ...
- java poi excel 生成表格的工具封装
效果如下: 代码如下: import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import ...
- IE使用多彩文档上传数据库报错
使用多彩文档,用IE浏览器提交表单,双引号里面包含单引号,导致数据库插入不了,而用chrome浏览器不会报错,自动过滤单引号, 解决:content.replace("'", &q ...
- Build FTP Server on Windows
1. Use the self-ftp component service with windows control panel / program / start or close windows ...
- ShadowMap渲染阴影方法及问题 【转】
ShadowMap基于的原理:SM算法是一个2-pass绘制算法,第一pass从光源视点绘制场景,生成SM纹理,第2pass从视点视图按常规方法绘制场景 从光源的位置观察场景,这时候我们看不到的地方就 ...
- makefile 与android.mk中加信息打印
makefile里面加打印: [table]@echo ' zImage - Compressed kernel image' android.mk里面加信息打印: $(warning TEXT... ...
- hibernate 自动封装
一.查询全部对象属性的封装则比较简单 Query query = this.getSession().createSQLQuery(queryString).addEntity(pojoClass); ...
- 嵌入式Linux驱动案例之中的一个
前几天解决一个嵌入式Linux驱动问题,做为一个案例进行记录. 本案例是一个CPU通过LocalBus总线訪问外围一个设备,详细设备是一个DSP器件.在实际应用中,性能要求非常高,对数据訪问速度提出比 ...
- Spring里bean之间的循环依赖解决与源码解读
通过前几节的分析,已经成功将bean实例化,但是大家一定要将bean的实例化和完成bean的创建区分开,bean的实例化仅仅是获得了bean的实例,该bean仍在继续创建之中,之后在该bean实例的基 ...
- 「零秒思考」是个神话,不过这款笔记术你值得拥有zz
今天读完了赤羽雄二的<零秒思考>,作者是一位在麦肯锡公司工作了 14 年的资深顾问.依照作者的说法,「零秒思考」指的是: 瞬间便能认清现状, 瞬间便能整理问题, 瞬间便能考虑出解决办法, ...