我想从 3d 数组中获取 2d 数组。假设我有一个维度为 [10,10,10] 的双 3d 数组 A3,
我需要得到一个 2d 数组 A2 = A3[:,5,:],即第二维的索引等于例如 5。
如果我想获得 2d 数组 A2 的分区(例如 A1=A2[2,:] 类型)(即 2d 数组的 1d 实例),我可以这样做(设置第一维的索引,例如到 2):
double[] A1 = Enumerable.Range(0,A2.Length).Select(x=>A2[2,x]).ToArray();
我怎样才能做到从 3 到 2(或通常从 N 到 N-1)维度?
编辑. 示例输入:
double[,,] A3 = new double[2,3,4]{
{
{4,3,2,1},
{5,4,3,2},
{6,5,4,3}
},
{
{1,2,3,4},
{2,3,4,5},
{3,4,5,6}
}
};
结果数组 A2=A3[:,1,:] 必须包含以下内容: { {5,4,3,2},{2,3,4,5} }