Pythonで2次元のnumpy配列を1次元の配列にフラット化する
2d numpy配列は、配列の配列です。この記事では、要素を1次元配列として取得するためにフラット化する方法を説明します。
平らにする
numpyのflatten関数は、2D配列を1D配列に変換する直接的な方法です。
例
import numpy as np array2D = np.array([[31, 12, 43], [21, 9, 16], [0, 9, 0]]) # printing initial arrays print("Given array:\n",array2D) # Using flatten() res = array2D.flatten() # Result print("Flattened array:\n ", res)を使用
出力
上記のコードを実行すると、次の結果が得られます-
Given array: [[31 12 43] [21 9 16] [ 0 9 0]] Flattened array: [31 12 43 21 9 16 0 9 0]
ラベリング付き
2D配列を1Dにフラット化するのと同様のことを行うravelと呼ばれる別の関数があります。
例
import numpy as np array2D = np.array([[31, 12, 43], [21, 9, 16], [0, 9, 0]]) # printing initial arrays print("Given array:\n",array2D) # Using ravel res = array2D.ravel() # Result print("Flattened array:\n ", res)
出力
上記のコードを実行すると、次の結果が得られます-
Given array: [[31 12 43] [21 9 16] [ 0 9 0]] Flattened array: [31 12 43 21 9 16 0 9 0]
-
NumPyPythonでの基本的なスライシングと高度なインデックス作成
ndarrayのインデックス付けは、標準のpython x [obj]構文を使用して実行できます。ここで、xは配列であり、objは選択です。 利用可能なインデックスには3種類あります- フィールドアクセス 基本的なスライス 高度なインデックス作成 どのような種類のインデックスが作成されるかは、objによって異なります。このセクションでは、主に基本的なスライスと高度なインデックス作成に焦点を当てます。 高度なインデックス作成は2つの部分に分けることができます- 整数配列のインデックス作成 ブールインデックス 基本的なスライス スライスのPythonの基本概念は、基本的なスライスで
-
NumpyのFlatten()とRavel()の違い
numpy配列を作成する方法はたくさんあります。 Numpyは、ndarrayを1Darrayに変換する2種類の方法を提供します。1つはflatten()メソッドを使用する方法で、もう1つはravel()メソッドを使用する方法です。 例 #Import required library, numpy import numpy as np #create an array from a list arr = np.array( [ (2, 7, 3, 4), (5, 6, 9, 1)]) #flatten_output print(arr.flatten()) #ravel_output pri