Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过在NumPy索引+切片中固定一个轴,从3d矩阵中获取子阵列_Javascript_Python_Matrix - Fatal编程技术网

Javascript 通过在NumPy索引+切片中固定一个轴,从3d矩阵中获取子阵列

Javascript 通过在NumPy索引+切片中固定一个轴,从3d矩阵中获取子阵列,javascript,python,matrix,Javascript,Python,Matrix,我的输入是一个3x3x3数组,例如: m = [[[0, 1, 2], [3, 4, 5], [6, 7, 8]], [[9, 10, 11], [12, 13, 14], [15, 16, 17]], [[18, 19, 20], [21, 22, 23], [24, 25, 26]]] 这些是我想得到的输出,仅使用向量或矩阵运算: out1 = [[0,1,2],[3,4,5],[6,7,8]] (corresponding to indice 0 along

我的输入是一个3x3x3数组,例如:

m = [[[0, 1, 2], [3, 4, 5], [6, 7, 8]],
     [[9, 10, 11], [12, 13, 14], [15, 16, 17]],
     [[18, 19, 20], [21, 22, 23], [24, 25, 26]]]
这些是我想得到的输出,仅使用向量或矩阵运算:

out1 = [[0,1,2],[3,4,5],[6,7,8]]      (corresponding to indice 0 along first axis)
out2 = [[0,1,2],[9,10,11],[18,19,20]] (corresponding to indice 0 along second axis)
out3 = [[0,3,6],[9,12,15],[18,21,24]] (corresponding to indice 0 along third axis)
我知道我可以用python使用numpy这样做:

cube = np.arange(27).resize(3,3,3)
out1 = cube[0,:,:]
out2 = cube[:,0,:]
out3 = cube[:,:,0]
但我需要用javascript实现这一点。我知道如何使用循环和索引,但我认为可能有一种更有效的方法。

具体使用,从底层:

var m=nj.array[[0,1,2],[3,4,5],[6,7,8], [[9, 10, 11], [12, 13, 14], [15, 16, 17]], [[18, 19, 20], [21, 22, 23], [24, 25, 26]]]; console.logm.pick0,null,null;
您的输入不是矩阵。这是一个三阶张量。您的输出是一个3x3矩阵。你只是在找一些数学符号吗?那么,这是离题了。很抱歉第一篇文章不清楚。我重新阐述了我的问题,希望它更容易理解!问题是如何在矩阵运算中转换python的切片函数。NicoSchertler三阶张量与三阶矩阵有何不同?如果您需要其他语言的功能,请说明该语言。矩阵和向量分别是二维或一维的特殊张量。像立方体这样的三维物体不能是矩阵。没有三阶矩阵。所谓维数,我不是指行/列中的条目数,而是指数组的维数,用于表示张量,即一个条目需要多少个索引。是的,我理解你说的,我不知道你不能称之为矩阵。这是一个三阶张量。