logo

Python の numpy.ndarray. flatten()

Python では、場合によっては、2 次元配列や多次元配列ではなく、1 次元配列が必要になります。この目的のために、numpy モジュールは次の関数を提供します。 numpy.ndarray. flatten()、 これは、2 次元または多次元配列ではなく、1 次元で配列のコピーを返します。

構文

 ndarray.flatten(order='C') 

パラメーター:

順序: {'C'、'F'、'A'、'K'}(オプション)

order パラメーターを 'C' に設定すると、配列が行優先の順序でフラット化されることを意味します。 「F」が設定されている場合、配列は列優先の順序でフラット化されます。 'a' がメモリ内で Fortran 連続している場合、および order パラメーターを 'A' に設定した場合にのみ、配列は列優先の順序でフラット化されます。最後の順序は「K」で、メモリ内で要素が発生したのと同じ順序で配列を平坦化します。デフォルトでは、このパラメータは「C」に設定されています。

戻り値:

y: ndarray

この関数は、1 次元に平坦化されたソース配列のコピーを返します。

キーボードにはキーが何個ありますか

例 1:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten() b 

出力:

 array([1, 4, 7, 2, 5, 8, 3, 6, 9]) 

上記のコードでは

  • numpy をエイリアス名 np でインポートしました。
  • 次を使用して多次元配列 'a' を作成しました。 配列() 関数。
  • 変数「b」を宣言し、戻り値を代入しました。 平坦化() 関数。
  • 最後に、次の値を出力しようとしました。 「b」

出力には、多次元配列の要素を 1 次元に含む ndarray が表示されます。

例 2:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('C') b 

出力:

 array([1, 4, 7, 2, 5, 8, 3, 6, 9]) 

上記のコードでは

  • numpy をエイリアス名 np でインポートしました。
  • 次を使用して多次元配列 'a' を作成しました。 配列() 関数。
  • 変数「b」を宣言し、戻り値を代入しました。 平坦化() 関数。
  • 関数では「C」オーダーを使用しました。
  • 最後に、次の値を出力しようとしました。 「b」

出力には、多次元配列の要素を 1 次元に含む ndarray が表示されます。

例 3:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('F') b 

出力:

 array([1, 2, 3, 4, 5, 6, 7, 8, 9]) 

例 4:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('A') b 

出力:

 array([1, 4, 7, 2, 5, 8, 3, 6, 9]) 

例 5:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('K') b 

出力:

 array([1, 4, 7, 2, 5, 8, 3, 6, 9])