MATLAB程序转成python程序时的几个注意点

本文介绍了MATLAB中如何通过索引操作和repmat函数处理矩阵,以及Python中numpy库的矩阵转置、共轭转置、矩阵拼接、单位矩阵创建和傅里叶变换等操作。对于矩阵的运算,包括行列向量的乘法和元素级乘法也进行了说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(一)MATLAB

  1. 在使用MATLAB时,若有两个矩阵a和b,代码c=a(b)可得到一个与b相同大小的矩阵c,c矩阵元素来自于a。可理解为将a中各元素按列依次标序号,b存储的是c中各元素在a中所对应的序号。

>> a = [4,5,3,4,6,8,7,562,1,86]

a =

     4     5     3     4     6     8     7   562     1    86

>> b = [2,5,7,4;1,3,6,2]

b =

     2     5     7     4
     1     3     6     2

>> c = a(b)

c =

     5     6     7     4
     4     3     8     5
  1. B =repmat(A,m,n)是一个处理大矩阵且内容有重复时使用。其功能是以A的内容堆叠在(MxN)的矩阵B中,B矩阵的大小由MxN及A矩阵的内容决定,如果A是一个3x4x5的矩阵,有B = repmat(A,2,3)则最后的矩阵是6x12x5。

(二)python语法

1.矩阵处理函数(以列向量C,C1、行向量R、二维矩阵A和B为例)

矩阵转置——A.transpose()或A.T或transpose(A)

矩阵共轭转置——A.T.conjugate()或A.H(仅适用于数据类型为matrix的矩阵,即A的数据类型为matrix)

水平拼接矩阵——numpy.hstack((A,B))或

创建单位矩阵——numpy.ones((2,3))

离散傅里叶变换——numpy.fft.fft(C)

行、列向量进行矩阵相乘——numpy.multiply(C,R),即R*C

向量进行元素对应相乘——numpy.multiply(C,C1)或C*C1

注:此文章参考多方资料,同时结合本人编程经验。如有侵权,请联系修改或删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值