gpt4 book ai didi

matlab - 如何在 MATLAB 中不使用 for 循环生成这个 3-D 矩阵?

转载 作者:行者123 更新时间:2023-12-02 20:59:11 25 4
gpt4 key购买 nike

我想生成一个 N×N×3 矩阵 A这样A(:,:,i) = eye(n)*i 。如何在不使用 for 循环(即以矢量化方式)的情况下做到这一点?

最佳答案

实现此目的的一种方法是使用函数 KRONRESHAPE :

>> N = 4;
>> A = reshape(kron(1:3,eye(N)),[N N 3])

A(:,:,1) =

1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

A(:,:,2) =

2 0 0 0
0 2 0 0
0 0 2 0
0 0 0 2

A(:,:,3) =

3 0 0 0
0 3 0 0
0 0 3 0
0 0 0 3

关于matlab - 如何在 MATLAB 中不使用 for 循环生成这个 3-D 矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4392021/

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