我有一个n乘m矩阵写在纸上,我想用J对它进行计算。
我可以输入这样的矩阵(n = 3,m= 3):
A =: 3 4 $ 1 3 2 4 7 8 1 2 2 0 0 1问题是如何输入这样的矩阵:
A =: (something here)
1 3 2 4
7 8 1 2
2 0 0 1
)我问这样一个奇怪的问题的原因是,我在一些书中看到了使用动词0 : 0或类似的东西来键入矩阵的类似方法,但我不记得在哪里。:{
发布于 2014-10-07 18:26:12
我使用(something here)作为(".;._2) 0 : 0。这样,我也可以混合表达。
] A =: (".;._2) 0 : 0
5 $ 0
? 5 $ 5
5 $ 1
1 2 3 2 1
)
0 0 0 0 0
2 1 0 0 3
1 1 1 1 1
1 2 3 2 1发布于 2014-10-07 19:51:30
使用并进(而不是一元) ".将尝试将每一行解析为数字串,而不是将其计算为J语句。如果字符串不能解析为数字,则使用左参数(下面示例中的_99)。这种方法将正确地解释一组更大的数字,表示为字符串。
选择noun define而不是0 : 0只是保存了一组方括号,否则需要将_2与0分开。
]A =: _99&".;._2 noun define
1 -3 2 4
7 8 1 2
2 0 0 1
)
1 _3 2 4
7 8 1 2
2 0 0 1https://stackoverflow.com/questions/26241527
复制相似问题