Matlab如何实现矩阵复制扩充

考虑这个问题:

定义一个简单的行向量a

如何复制10行呢?即:

同理,对于一个列向量,如何复制 10 列呢?

关键函数1:

repmat( A , m , n ):将向量/矩阵在垂直方向复制m次,在水平方向复制n次。

再举一个例子,对于 a =[1 2;3 4]:

垂直方向复制3次,水平方向复制2次,结果是:

接下来进阶一下,玩点复杂的。对于 a = [1 2;3 4],如何变成下面这样:

关键函数:

kron( a , B ) :对 a 的每一个元素 e,都数乘B矩阵,构成新的矩阵。具体用法可以doc kron。

引用 Matlab 的帮助文档,对于 A 和 B,kron(A,B) 的图示如下:

回到上面的问题,对于 a=[1 2;3 4],

matlab中x0=[x0,x0] 矩阵扩展

就是说对矩阵x0进行扩展,左右各一个x0组成的新的矩阵赋值给x0。

比如:

x0=[1,2;3,4]
x0 =

     1     2
     3     4

x0=[x0,x0]
x0 =

     1     2     1     2
     3     4     3     4

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • matlab、python中矩阵的互相导入导出方式

    还有一种最流行的h5py.. 过几天更新 ------------在python中导出矩阵至matlab------------ 如果矩阵是mxn维的. 那么可以用 : np.savetxt('dev_ivector.csv', dev_ivector, delimiter = ',') 对应matlab读取为: dev_ivec = csvread('dev_ivector.csv') ###csv格式其实就内定了结构体 如果矩阵是(n,)这种格式.['aagj' 'aagy' 'aann'

  • matlab中实现矩阵删除一行或一列的方法

    实例如下所示: >> A=[1,2,3;4,5,6;7,8,9] A = 1 2 3 4 5 6 7 8 9 删除行: >> A(2,:)=[] A = 1 2 3 7 8 9 删除列: >> A(:,2)=[] A = 1 3 7 9 以上这篇matlab中实现矩阵删除一行或一列的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: Python numpy 提取矩阵的某一行或某一列的实例 Python矩阵常见运算操

  • 使用matlab 判断两个矩阵是否相等的实例

    数学意义的相等 all(A(:) == B(:)) isequal(A, B) 但须注意的是:B = A,未必能保证 isequal(A, B)返回真,因为如果 A 中包含NaN,因为按照定义,NaN ~= NaN >> A = [1, NaN] >> B = A >> isequal(A, B) 0 >> NaN == NaN 0 浮点数相等 对于浮点数矩阵,判断两个矩阵是否精确相等意义不大,真正有意义的比较是比较两个矩阵是否足够接近: >>

  • Matlab如何实现矩阵复制扩充

    考虑这个问题: 定义一个简单的行向量a 如何复制10行呢?即: 同理,对于一个列向量,如何复制 10 列呢? 关键函数1: repmat( A , m , n ):将向量/矩阵在垂直方向复制m次,在水平方向复制n次. 再举一个例子,对于 a =[1 2;3 4]: 垂直方向复制3次,水平方向复制2次,结果是: 接下来进阶一下,玩点复杂的.对于 a = [1 2;3 4],如何变成下面这样: 关键函数: kron( a , B ) :对 a 的每一个元素 e,都数乘B矩阵,构成新的矩阵.具体用法可

  • mat矩阵和npy矩阵实现互相转换(python和matlab)

    目录 mat矩阵和npy矩阵互相转换 numpy.narray矩阵保存为mat文件 读取mat文件 npy文件与mat文件的保存与读取 1. npy文件 2. mat文件 mat矩阵和npy矩阵互相转换 numpy.narray矩阵保存为mat文件 import numpy as np import scipy.io as io mat_path = 'your_mat_save_path' mat = np.zeros([4, 20]) io.savemat(mat_path, {'name'

  • 利用C++实现矩阵的相加/相称/转置/求鞍点

    1.矩阵相加 两个同型矩阵做加法,就是对应的元素相加. 复制代码 代码如下: #include<iostream>using namespace std;int main(){ int a[3][3]={{1,2,3},{6,5,4},{4,3,2}}; int b[3][3]={{4,3,2},{6,5,4},{1,2,3}}; int c[3][3]={0,0,0,0,0,0,0,0,0}; int i,j; cout<<"Array A:"<<

  • python中返回矩阵的行列方法

    实例如下所示: # TODO 返回矩阵的行数和列数 def shape(M): return len(M),len(M[0]) 以上这篇python中返回矩阵的行列方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: Python numpy 提取矩阵的某一行或某一列的实例 Python矩阵常见运算操作实例总结 Python表示矩阵的方法分析 Python获取二维矩阵每列最大值的方法 Python实现矩阵转置的方法分析 matlab中实现矩阵删

  • Python numpy 提取矩阵的某一行或某一列的实例

    如下所示: import numpy as np a=np.arange(9).reshape(3,3) a Out[31]: array([[0, 1, 2], [3, 4, 5], [6, 7, 8]]) 矩阵的某一行 a[1] Out[32]: array([3, 4, 5]) 矩阵的某一列 a[:,1] Out[33]: array([1, 4, 7]) b=np.eye(3,3) b Out[36]: array([[ 1., 0., 0.], [ 0., 1., 0.], [ 0.,

  • Python获取二维矩阵每列最大值的方法

    因为做项目中间有一个很小的环节需要这个功能,所以就写了一个简单的小函数,下面是具体实现: #!usr/bin/env python #encoding:utf-8 ''' __Author__:沂水寒城 ''' def get_max_value(martix): ''' 得到矩阵中每一列最大的值 ''' res_list=[] for j in range(len(martix[0])): one_list=[] for i in range(len(martix)): one_list.ap

  • Numpy与Pytorch 矩阵操作方式

    Numpy 随机矩阵: np.random.randn(d0, d1, d2, ...) 矩阵大小与形状: np.ndarray.size 与 np.dnarray.shape Pytorch 随机矩阵: torch.randn(d0, d1, d2, ...) 添加维度: tensor.unsqueeze(0) 压缩维度: tensor.squeeze(0) 按维度拼接tensor: torch.cat(inputs, dim=0, ...) 维度堆叠: torch.stack(inputs,

  • JavaScript编程通过Matlab质心算法定位学习

    目录 Matlab质心算法 Matlab作为封闭的商业软件,受美国政府左右,无视商业道德,故不建议使用.如果喜欢Matlab语法,可移步开源的octave,其语法与matlab完全相同. Matlab质心算法 所谓质心,就是当密度作为像素点灰度值时的重心,例如其质心的x坐标为 最直观的方法就是下面的这种方式了. %%通过质心算法找到img的质心位置 function [x,y] = oCenter(img) img = double(img); [m,n] = size(img); x = 0;

随机推荐