我将matlab代码重写为C#。我不知道在matlab中编程,我无法理解这一部分:
d9=[d9 d8];
d10=d9(:,2:10);
d5=[d6 d10 d7];
变量d6,d7,d8和d9是二维阵列。
完整的Matlab代码在这里:link to codeforge.com
答案 0 :(得分:2)
“我不知道在matlab中编程,我无法理解这部分”
a)d9=[d9 d8];
将连接矩阵d9
和d8
,并将结果存储在d9
中。其他方式是它只是将矩阵d8
附加到d9
示例:
>> a=[1 2;3 4]
a =
1 2
3 4
>> b=[5 6;7 8]
b =
5 6
7 8
>> a=[a b]
a =
1 2 5 6
3 4 7 8
b)d10=d9(:,2:10);
:
是colon operator广泛用于向量操作,子脚本编写和创建for循环迭代器
下面,
第二个下标2:10
表示d9
:
d10
因此,d10
的所有元素都会为d9
的所有行中的所有元素分配>> c=a(:,2:4)
c =
2 5 6
4 7 8
。
示例:
d5=[d6 d10 d7];
c)d6
再次类似于第一个,连接矩阵d10
d7
和d5
,并将结果分配给{{1}}。
答案 1 :(得分:0)
还不能直接在答案中发表评论,但我认为P0W的答案中有一个错字。
它应该说明:
"第一个下标: d9 "中的所有行(重点补充)而不是"第一个下标:d10"
中的所有行其余的答案是正确的,但万一它会让一些不熟悉Matlab的人感到困惑......