导入
import breeze.linalg._
import breeze.numerics._
@H_502_15@Breeze创建函数:
@H_502_15@
@H_502_15@
@H_502_15@操作名称
@H_502_15@Breeze函数
@H_502_15@对应Numpy函数
全0矩阵 |
DenseMatrix.zeros[Double](2,3) |
zeros((2,3)) |
@H_502_15@全0向量
@H_502[email protected][Double](3)
@H_502_15@zeros(3)
@H_502_15@全1向量
@H_502[email protected]nes[Double](3)
@H_502_15@ones(3)
@H_502_15@按数值填充向量
@H_502[email protected](3){1.0}
@H_502_15@ones(3)*1.0
@H_502_15@生成随机向量
@H_502[email protected](start,end,step), Vector.rangeD(start,end,step)
@H_502_15@
@H_502_15@线性等分向量(用于产生Start, end之间的N点行矢量)
@H_502[email protected](start,end,numvals)
@H_502_15@
单位矩阵 |
DenseMatr.eye[Double](3) |
eye(3) |
对角矩阵 |
Diag(DenseVector(1.0,2.0,3.0)) |
diag((1.0,2.0,3.0)) |
按照行创建矩阵 |
DenseMatrix((1.0,2.0),(3.0,4.0)) |
array([[1.0,2.0],[3.0,4.0]]) |
@H_502_15@按照行创建向量
@H_502_15@DenseVector(1,2,3,4)
@H_502_15@array([1,2,3,4])
@H_502_15@向量转置
@H_502_15@DenseVector(1,2,3,4).t
@H_502_15@array([1 2 3 4]).reshape(-1,1)
@H_502_15@从函数创建向量
@H_502[email protected](3){i => i*2}
@H_502_15@
从函数创建矩阵 |
DenseMatrix.tabulate(3,2){case(i,j) => i+j} |
|
@H_502_15@从数组创建向量
@H_502_15@new DenseVector(array(1, 2, 3,4))
@H_502_15@
从数组创建矩阵 |
new DenseMatrix(2,3,array(11,12,13,21.22,23)) |
|
@H_502_15@0到1的随机向量
@H_502[email protected](4)
@H_502_15@
0到1的随机矩阵 |
DenseMatrix.rand(2,3) |
|
@H_502_15@
@H_502_15@
@H_502_15@
@H_502_15@Breeze元素访问
@H_502_15@
@H_502_15@
@H_502_15@操作名称
@H_502_15@Breeze函数
@H_502_15@对应Numpy函数
@H_502_15@指定位置
@H_502_15@a(0,1)
@H_502_15@a[0,1]
@H_502_15@向量子集
@H_502_15@a(1 to 4), a(1 until 5), a.slice(1,5)
@H_502_15@a[1:5]
@H_502_15@按照指定步长取子集
@H_502_15@a(5 to 0 by -1)
@H_502_15@a[5:0:-1]
@H_502_15@指定开始位置至结尾
@H_502_15@a(1 to -1)
@H_502_15@a[1:]
@H_502_15@最后一个元素
@H_502_15@a(-1)
@H_502_15@a[-1]
@H_502_15@矩阵指定列
@H_502_15@a(::, 2)
@H_502_15@a[:,2]
@H_502_15@
@H_502_15@
@H_502_15@
@H_502_15@Breeze元素操作
@H_502_15@
@H_502_15@
@H_502_15@操作名称
@H_502_15@Breeze函数
@H_502_15@对应Numpy函数
@H_502_15@调整矩阵形状
@H_502[email protected](3,2)
@H_502[email protected](3,2)
@H_502_15@矩阵转成向量
@H_502[email protected](Makes copy)
@H_502[email protected]()
@H_502_15@复制下三角
@H_502_15@lowerTriangular(a)
@H_502_15@tril(a)
@H_502_15@复制上三角
@H_502_15@upperTriangular(a)
@H_502_15@triu(a)
@H_502_15@矩阵复制
@H_502_15@a.copy
@H_502_15@np.copy(a)
@H_502_15@取对角线元素
@H_502_15@diag(a)
@H_502_15@diagonal(a)
@H_502_15@子集赋数值
@H_502_15@a(1 to 4) := 5.0
@H_502_15@a[1:4]=5.0
@H_502_15@子集赋向量
@H_502_15@a(1 to 4) := DenseVector(1.0,2.0,3.0)
@H_502_15@a[1:4]=[1.0 2.0 3.0]
@H_502_15@矩阵赋值
@H_502_15@a(1 to 3, 1 to 3) := 5.0
@H_502_15@a[2:4, 2:4] = 5.0
@H_502_15@矩阵列赋值
@H_502_15@a(::, 2) := 5.0
@H_502_15@a(:,3) = 5
@H_502_15@垂直连接矩阵
@H_502[email protected](a,b)
@H_502_15@[a;b]
@H_502_15@横向连接矩阵
@H_502[email protected](a,b)
@H_502_15@[a,b]
@H_502_15@向量连接
@H_502[email protected](a,b)
@H_502_15@[a b]
@H_502_15@
@H_502_15@
@H_502_15@
@H_502_15@Breeze数值计算函数
@H_502_15@
@H_502_15@
@H_502_15@操作名称
@H_502_15@Breeze函数
@H_502_15@对应Numpy函数
@H_502_15@元素加法
@H_502_15@a + b
@H_502_15@a + b
@H_502_15@元素乘法
@H_502_15@a :* b
@H_502_15@a * b
@H_502_15@元素除法
@H_502_15@a :/ b
@H_502_15@a / b
@H_502_15@元素比较
@H_502_15@a :< b
@H_502_15@a < b
@H_502_15@元素相等
@H_502_15@a :== b
@H_502_15@a == b
@H_502_15@元素追加
@H_502_15@a :+= 1.0
@H_502_15@a += 1
@H_502_15@元素追乘
@H_502_15@a :*= 2.0
@H_502_15@a *= 2
@H_502_15@向量点积
@H_502_15@a dot b, a.t * bT
@H_502_15@dot(a,b)
@H_502_15@元素最大值
@H_502_15@max(a)
@H_502[email protected]()
@H_502_15@元素最大值及位置
@H_502_15@argmax(a)
@H_502[email protected]()
@H_502_15@
@H_502_15@
@H_502_15@
@H_502_15@Breeze求和函数
@H_502_15@
@H_502_15@
@H_502_15@操作名称
@H_502_15@Breeze函数
@H_502_15@对应Numpy函数
@H_502_15@元素求和
@H_502_15@sum(a)
@H_502[email protected]()
@H_502_15@每一列求和
@H_502_15@sum(a, axis._0), sum(a(::,*))
@H_502_15@sum(a,0)
@H_502_15@每一行求和
@H_502_15@sum(a,axis._1), sum(a(*, ::))
@H_502_15@sum(a,1)
@H_502_15@对角线元素和
@H_502_15@trace(a)
@H_502[email protected]()
@H_502_15@累积和
@H_502_15@accumulate(a)
@H_502[email protected]()
@H_502_15@
@H_502_15@
@H_502_15@
@H_502_15@Breeze布尔函数
@H_502_15@
@H_502_15@
@H_502_15@操作名称
@H_502_15@Breeze函数
@H_502_15@对应Numpy函数
@H_502_15@元素与操作
@H_502_15@a :& b
@H_502_15@a & b
@H_502_15@元素或操作
@H_502_15@a :| b
@H_502_15@a | b
@H_502_15@元素非操作
@H_502_15@!a
@H_502_15@~a
@H_502_15@任意元素非零
@H_502_15@any(a)
@H_502_15@any(a)
@H_502_15@所有元素非零
@H_502_15@all(a)
@H_502_15@all(a)
@H_502_15@
@H_502_15@
@H_502_15@
@H_502_15@Breeze线性代数函数
@H_502_15@
@H_502_15@
@H_502_15@操作名称
@H_502_15@Breeze函数
@H_502_15@对应Numpy函数
@H_502_15@线性求解
@H_502_15@a \ b
@H_502_15@linalg.solve(a,b)
@H_502_15@转置
@H_502[email protected]
@H_502[email protected]()
@H_502_15@求行列式
@H_502_15@det(a)
@H_502[email protected](a)
@H_502_15@求逆
@H_502_15@inv(a)
@H_502[email protected](a)
@H_502_15@求伪逆
@H_502_15@pinv(a)
@H_502[email protected](a)
@H_502_15@求范数
@H_502_15@norm(a)
@H_502_15@norm(a)
@H_502_15@特征值和特征向量
@H_502_15@eigSym(a)
@H_502[email protected](a)[0]
@H_502_15@特征值
@H_502_15@val(er,ei,_) = eig(a)(实部与虚部分开)
@H_502[email protected](a)[0]
@H_502_15@特征向量
@H_502_15@eig(a)._3
@H_502_15@
@H_502_15@奇异值分解
@H_502_15@val svd.SVD(u,s,v) = svd(a)
@H_502[email protected](a)
@H_502_15@求矩阵的秩
@H_502_15@rank(a)
@H_502_15@rank(a)
@H_502_15@矩阵长度
@H_502[email protected]
@H_502[email protected]
@H_502_15@矩阵行数
@H_502[email protected]
@H_502[email protected][0]
@H_502_15@矩阵列数
@H_502[email protected]
@H_502[email protected][1]
@H_502_15@
@H_502_15@
@H_502_15@
@H_502_15@Breeze取整函数
@H_502_15@
@H_502_15@
@H_502_15@操作名称
@H_502_15@Breeze函数
@H_502_15@对应Numpy函数
@H_502_15@四舍五入
@H_502_15@round(a)
@H_502_15@around(a)
@H_502_15@最小整数
@H_502_15@ceil(a)
@H_502_15@ceil(a)
@H_502_15@最大整数
@H_502_15@floor(a)
@H_502_15@floor(a)
@H_502_15@符号函数
@H_502_15@signum(a)
@H_502_15@sign(a)
@H_502_15@取正数
@H_502_15@abs(a)
@H_502_15@abs(a)
@H_502_15@BLAS向量-向量运算
@H_502_15@
@H_502_15@SROTG
@H_502_15@Givens旋转设置
@H_502_15@SROTMG
@H_502_15@改进Givens旋转设置
@H_502_15@SROT
@H_502_15@Givens旋转
@H_502_15@SROTM
@H_502_15@改进Givens旋转
@H_502_15@SSWAP
@H_502_15@交换x和y
@H_502_15@SSCAL
@H_502_15@常数a乘以向量x()
@H_502_15@ScopY
@H_502_15@把x复制到y
@H_502_15@SAXPY
@H_502_15@向量y+常数a乘以向量x(y = a*x + y)
@H_502_15@SDOT
@H_502_15@点积
@H_502_15@SDSDOT
@H_502_15@扩展精度累积的点积
@H_502_15@SNRM2
@H_502_15@欧氏范数
@H_502_15@SCNRM2
@H_502_15@欧氏范数
@H_502_15@SASUM
@H_502_15@绝对值之和
@H_502_15@ISAMAX
@H_502_15@最大值位置
@H_502_15@
@H_502_15@
@H_502_15@BLAS矩阵-向量运算
@H_502_15@
@H_502_15@SGEMV
@H_502_15@矩阵向量乘法
@H_502_15@SGBMV
@H_502_15@带状矩阵向量乘法
@H_502_15@SSYMV
@H_502_15@对称矩阵向量乘法
@H_502_15@SSBMV
@H_502_15@对称带状矩阵向量乘法
@H_502_15@sspMV
@H_502_15@对称填充矩阵向量乘法
@H_502_15@STRMV
@H_502_15@三角矩阵向量乘法
@H_502_15@STBMV
@H_502_15@三角带状矩阵向量乘法
@H_502_15@STPMV
@H_502_15@三角填充矩阵向量乘法
@H_502_15@STRSV
@H_502_15@求解三角矩阵
@H_502_15@STBSV
@H_502_15@求解三角带状矩阵
@H_502_15@STPSV
@H_502_15@求解三角填充矩阵
@H_502_15@SGER
@H_502_15@A := alpha*x*y’ + A
@H_502_15@SSYR
@H_502_15@A := alpha*x*x’ + A
@H_502_15@sspR
@H_502_15@A := alpha*x*x’ + A
@H_502_15@SSYR2
@H_502_15@A := alpha*x*y’ + alpha*y*x’ + A
@H_502_15@sspR2
@H_502_15@A := alpha*x*y’ + alpha*y*x’ + A
@H_502_15@
@H_502_15@
@H_502_15@BLAS矩阵-矩阵运算
@H_502_15@
@H_502_15@SGemm
@H_502_15@矩阵乘法
@H_502_15@SSYMM
@H_502_15@对称矩阵乘法
@H_502_15@SSYPK
@H_502_15@对称矩阵的秩-k修正
@H_502_15@SSYR2K
@H_502_15@对称矩阵的秩-2k修正
@H_502_15@STRMM
@H_502_15@三角矩阵乘法
@H_502_15@STRSM
@H_502_15@多重右端的三角线性方程组求解
向量与向量
- 加:+ 减:- 点乘: :* 点除::/ 向量乘法: * 向量除法: /
矩阵与矩阵
- 加:+ 减:- 点乘: :* 点除::/ 矩阵乘法: * 矩阵除法: /
矩阵或向量与数值
矩阵和向量
- 加:+ 减:- 点乘: :* 点除::/ 矩阵乘法: * 矩阵除法: /
-
Matrix(*, ::)+Vector 逐行
-
Matrix(::, *)+Vector 逐列
参考文档:
1. https://github.com/scalanlp/breeze/wiki/Quickstart
2.https://github.com/scalanlp/breeze/wiki/Linear-Algebra-Cheat-Sheet
3.http://blog.csdn.net/hoikinyiu/article/details/52662268
4.http://blog.csdn.net/wo334499/article/details/51728628
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。