如何将非均匀矩阵合并为单个矩阵?
dt1 dt2 dt3 dt
1 3 6 10
2 4 1 5
3 6 5 3
4 7 4 1
5 1 2 4
6 2 8
7 8
8
9
10
我想将上述数据合并到一个矩阵(10 x 4)中。最大行数为 10。我创建了一个 zeros
矩阵。但是,我有一个问题,因为数据没有相同的维度。如何才能得到如下输出?我应该对数据进行排序并将缺失值替换为 0 吗?
1 1 1 1
2 2 2 0
3 3 0 3
4 4 4 4
5 0 5 5
6 6 6 0
7 7 0 0
8 8 8 0
9 0 0 0
10 0 0 10
dt1 dt2 dt3 dt
1 3 6 10
2 4 1 5
3 6 5 3
4 7 4 1
5 1 2 4
6 2 8
7 8
8
9
10
I have the above data which I want to combine in one single matrix (10 x 4). The maximum number of rows is 10. I created a zeros
matrix. However, I have a problem since the data doesn't have the same dimensions. How it is possible to get the output as below? Should I sort the data and replace the missing values with 0?
1 1 1 1
2 2 2 0
3 3 0 3
4 4 4 4
5 0 5 5
6 6 6 0
7 7 0 0
8 8 8 0
9 0 0 0
10 0 0 10
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是 @gnovice 对之前类似问题的回答
Here is the modified version of @gnovice's answer to a previous, similar question
让我们定义示例数据:
一种方法是使用
bsxfun
,然后在掩码指示的位置填充值:
示例结果(带有随机数据):
Let's define example data:
One approach is to create a mask with
bsxfun
and then fill values at the positions indicated by the mask:Example result (with random data):