gpt4 book ai didi

Matlab向量到矩阵的转换

转载 作者:太空宇宙 更新时间:2023-11-03 20:12:41 24 4
gpt4 key购买 nike

我想将以下向量 A 转换为矩阵 B,这个例子最好地证明了这一点:

n = 4;

A = [1 2 3 4 5 6];

B = [ 1 2 3 4;
2 3 4 5;
3 4 5 6; ]

我目前正在使用循环来实现这一点,想知道是否可以对其进行矢量化?

谢谢 L。

最佳答案

您可以使用 bsxfun -

A(bsxfun(@plus,[0:numel(A)-n]',1:n))

您还可以使用 hankel -

hankel(A(1:n),A(n:end)).'

sample 运行-

>> A = [3,4,6,0,1,2]
A =
3 4 6 0 1 2
>> n
n =
4
>> A(bsxfun(@plus,[0:numel(A)-n]',1:n))
ans =
3 4 6 0
4 6 0 1
6 0 1 2
>> hankel(A(1:n),A(n:end)).'
ans =
3 4 6 0
4 6 0 1
6 0 1 2

关于Matlab向量到矩阵的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33370029/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com