无法在matlab中乘以矩阵
unable to multiply matrix in matlab
美好的一天!
我正在尝试将两个矩阵相乘:
z = [64 x 1] ;具有复杂属性。
顶部 = [32 x 64]
两个矩阵 class 都是双矩阵,但是当我尝试 运行 程序时,我在最后一行遇到错误
Matrix dimensions must agree.
代码如下:
clear all; clc;
load('eeg.mat');
load('top.mat');
N = 64;
M = 32;
Psi = dftmtx(N);
z = Psi * VarName1;
y = z * top;
我想要的输出是 [32 x 1]
您似乎有产品 y = z * top
,其中 size(z) == [64, 1]
和 size(top) == [32, 64]
。这两个矩阵的大小不兼容,无法按此顺序相乘,因为“内部”维度必须一致,但在您的情况下 1 ~= 32
(请参阅 https://en.wikipedia.org/wiki/Matrix_multiplication#Definition)。你可能想要的是
y = top * z
美好的一天!
我正在尝试将两个矩阵相乘:
z = [64 x 1] ;具有复杂属性。
顶部 = [32 x 64]
两个矩阵 class 都是双矩阵,但是当我尝试 运行 程序时,我在最后一行遇到错误
Matrix dimensions must agree.
代码如下:
clear all; clc;
load('eeg.mat');
load('top.mat');
N = 64;
M = 32;
Psi = dftmtx(N);
z = Psi * VarName1;
y = z * top;
我想要的输出是 [32 x 1]
您似乎有产品 y = z * top
,其中 size(z) == [64, 1]
和 size(top) == [32, 64]
。这两个矩阵的大小不兼容,无法按此顺序相乘,因为“内部”维度必须一致,但在您的情况下 1 ~= 32
(请参阅 https://en.wikipedia.org/wiki/Matrix_multiplication#Definition)。你可能想要的是
y = top * z