MATLAB 线向量 + 行向量 = 数组适用于 r2017a 但不适用于 r2016a
MATLAB Line vector + row vector = array works in r2017a but not in r2016a
我在 r2017a 版本中使用 + 运算符对线向量和行向量求和得到一个数组。
A = [1 2]
B = [1;2]
C = A + B = [2 3; 3 4]
我试图 运行 我的代码在另一台装有 r2016a 版本的计算机上,但它不起作用。
我怎样才能简单地执行这个命令?
MATLAB 在 r2016b 中引入了一项新功能,可以在执行算术运算时自动将矩阵扩展到所需的维度。您可以阅读更多相关信息 here。因此,您的代码在 r2016a 中不起作用。在 r2016a 中的方法是这样的
C = bsxfun(@plus, A, B);
我没有r2017,这个操作逻辑错误
我想你是故意的
C=[A+B(1);A+B(2)]
而且绝对比函数快
你可以对更高维度使用for循环
for i=1:size(b,1)
C=[A+B(i);A+B(i)];
end
我在 r2017a 版本中使用 + 运算符对线向量和行向量求和得到一个数组。
A = [1 2]
B = [1;2]
C = A + B = [2 3; 3 4]
我试图 运行 我的代码在另一台装有 r2016a 版本的计算机上,但它不起作用。
我怎样才能简单地执行这个命令?
MATLAB 在 r2016b 中引入了一项新功能,可以在执行算术运算时自动将矩阵扩展到所需的维度。您可以阅读更多相关信息 here。因此,您的代码在 r2016a 中不起作用。在 r2016a 中的方法是这样的
C = bsxfun(@plus, A, B);
我没有r2017,这个操作逻辑错误 我想你是故意的
C=[A+B(1);A+B(2)]
而且绝对比函数快
你可以对更高维度使用for循环
for i=1:size(b,1)
C=[A+B(i);A+B(i)];
end