【发布时间】:2016-05-06 09:48:29
【问题描述】:
如果我有这样的(行,列)矩阵 M
M = [ 1 1 0 1 0 1
0 1 1 0 1 0
1 0 1 0 1 0
0 1 0 1 0 1
1 1 0 1 1 1 ]
然后我找到了这两个矩阵 M_row 和 M_col
M_row = [ 2 1 1
2 1 0
1 1 1
1 1 1
2 3 0 ]
which M_row 显示 M 中每一行的每组中有多少个
在那之后我资助 sum_row 和 count_row 就像那个
sum_row 显示 M_row 中元素的总和
sum_row = [ 4
3
3
3
5 ]
count_row 显示 M_row 中非零元素的数量
count_row = [ 3
2
3
3
2 ]
例如,M_row 中的最后一行是 [1 3 0],表示存在 [1 0 0 1 1 1]
我想要一个函数来
- 首先生成一个(行、列)零矩阵X
-
秒
for k=1:n if sum_row(k) + count_row(k) - 1 == columns then go back to M_row and convert this row element to group ones
例如 k=1 , 4+3-1 = 6 使条件为真,然后烘焙到 M_row 并将 [ 2 1 1] 转换为 [ 1 1 0 1 0 1]
最终的答案是
X = [ 1 1 0 1 0 1
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
1 1 0 1 1 1 ]
【问题讨论】:
-
M是输入吗?所以你只是想过滤M?还是你只知道M_row?从第 3 行和第 4 行可以看出,无法从M_row重构M -
M_row 和 sum_row 和 count_row 我可以找到然后,我只想从 M_row 中找到 X 而不使用 M
-
columns是什么?总是6? -
@user6296647 您一直在询问有关该主题的问题,但是当我在另一个问题中写评论时,您没有回复。你只希望我们给你一个最终的解决方案,而不需要你自己付出任何努力,对吧? :(
-
"我想要一个函数来..." 不仅没有显示解决您自己的问题的努力,整个帖子中也没有实际的问题。这只不过是一个“给我代码”的需求。