首先,我将 v 指定为:
v ← ⍳(4 9)
v
┌───┬───┬───┬───┬───┬───┬───┬───┬───┐
│0 0│0 1│0 2│0 3│0 4│0 5│0 6│0 7│0 8│
├───┼───┼───┼───┼───┼───┼───┼───┼───┤
│1 0│1 1│1 2│1 3│1 4│1 5│1 6│1 7│1 8│
├───┼───┼───┼───┼───┼───┼───┼───┼───┤
│2 0│2 1│2 2│2 3│2 4│2 5│2 6│2 7│2 8│
├───┼───┼───┼───┼───┼───┼───┼───┼───┤
│3 0│3 1│3 2│3 3│3 4│3 5│3 6│3 7│3 8│
└───┴───┴───┴───┴───┴───┴───┴───┴───┘
接下来我尝试像这样访问左上角的元素:
v[1+(0×(⍴v))]
相反,我得到了排名错误
这里发生了什么?
最佳答案
您实际上是在计算 v[1 1],而您可能想计算 v[1;1]。还可以尝试:(1+0×⍴v) ⌷ v
关于rank - 为什么 v[1+(0×(⍴v))] 会产生排名错误,而不是二维数组中的第一项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75632408/