【发布时间】:2015-05-10 16:37:46
【问题描述】:
为了深入了解上面的标题,我有一个向量定义如下:
A = [1 1 1 1 1 2 2 2 3 3 3 4 4 4];
鉴于上述向量,我如何在 MATLAB 中创建此矩阵?
1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 2 2 2 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 3 3 3 3 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 4 4 4
基本上,对于A 的每个唯一值,都有一个与之关联的行。对于每一行,与感兴趣的特定值相等的位置被放置在它们各自的列中。
在 MATLAB 中最有效的方法是什么?
【问题讨论】:
-
您应该发布您对此问题所做的任何研究。另外,你实际尝试了什么。请阅读How do I ask a good question?。
-
考虑查看stackoverflow.com/tour 以了解 SO 的工作原理
-
我试过谷歌但什么也找不到。我不知道我会使用哪个关键字来搜索
-
我同意 OP 应该展示他/她所做的事情,但这个问题对我来说似乎很合适。
-
我同意这个问题没有任何努力,但这是一个有趣的问题,我也提供了答案。顺便说一句,您在 Google 上找不到这个,因为它是一个具有自定义行为的矩阵。 IIRC,MATLAB 中没有内置的函数可以做你想做的事情,所以在这里问这个问题是一个不错的决定。