0

サイズ (nx m_1 x m_2 x m_3) の配列 Y があるとします。サイズ (m_1 x m_2 x m_3) の最初のサブ配列が必要な場合は、次のようにカンマを使用して選択できます

Y(1,,,)

同様に、Y のサイズが (nx m_1 x m_2 x m_3 x m_4) で、サイズ (m_1 x m_2 x m_3 x m_4) の最初のサブ配列が必要な場合は、次のようにコンマを使用して選択できます。

Y(1,,,,)

一般に、Y がサイズ (nx m_1 x m_2 x ... x m_p) の配列で、サイズ (m_1 x m_2 x ... x m_p) の最初のサブ配列が必要な場合、次のように選択できます。

Y(1,,...,)

ここで、,..., は p 個の異なるコンマを意味します。p がわかっている場合、p のコンマはどのように書けばよいでしょうか?

簡単な解決策は

array(array(Y,c(dim(Y)[1],prod(dim(Y)[-1])))[1,])

ただし、これは非効率的なコードです (Y は巨大になる可能性があるため、これを行列に変換してから配列に戻すことは避けたいと考えています)。

4

1 に答える 1