4

在 MATLAB 中,可以使用以下语法创建一维矩阵a和二维矩阵b

a = [2,3]
b = [2,3;4,5]

a在 Julia 中,使用相同的语法构造一维数组是可行的。但是,使用相同的语法构造二维数组b会失败。

定义b如下工作:

b = cat(2,[2,4],[3,5])

是否有在 Julia 中显式定义二维数组的语法快捷方式?如果是这样,它是什么?

4

4 回答 4

5

你也可以说 [1 2; 3 4],它给出了与 Matlab 中相同的结果。

于 2013-01-01T16:02:37.583 回答
5

您可能正在寻找这个:

a = [2,3]
b = [2 3;4 5]

这是 Julia 文档的“与 MATLAB 的主要区别”部分的相关段落:

使用语法[x,y,z]连接标量和数组在第一维(“垂直”)中连接。对于第二个维度(“水平”),使用空格,如[x y z]. 为了构造块矩阵(在前两个维度中连接),使用语法[a b; c d]来避免混淆。

于 2013-01-01T20:57:45.330 回答
1

以下语法有效(但不如 MATLAB 等效语法那么简洁):

b = [[2 3],[4 5]]
于 2013-01-01T01:18:57.237 回答
0

从 Julia 0.6 开始,根据您寻求的维度,您可以使用

# hcat
b = [[2, 3] [4, 5]]
2×2 Array{Int64,2}: [2 4; 3 5]

# vcat
c = [[2 3] ; [4 5]]
2×2 Array{Int64,2}: [2 3; 4 5]
于 2017-10-11T13:43:53.820 回答