要素が最初の位置から最後の位置に移動すると、最初の位置に戻ります。
NumPyのロール関数を調べてみましょう。
関数構文
関数の構文は次のとおりです。
しびれ。ロール((a、 シフト、 軸=なし)。
パラメータは次のとおりです。
- a –入力配列を定義します。
- shift –配列内の要素がシフトされる場所の数を指します。
- axis –指定された要素がシフトされる軸。
関数の戻り値
この関数は、指定された軸の要素が、shiftパラメーターで指定された係数でシフトされた配列を返します。
注:出力配列は、入力配列と同じ形状を保持します。
例1
以下に示すサンプルコードについて考えてみます。
輸入 numpy なので np
arr = np。配列(([[1,2,3]、 [4,5,6]])。
印刷((f「オリジナル:{arr}」)。
印刷((f“シフト:{np.roll(arr、shift = 1、axis = 0)}”)。
上記のコードは、roll関数を使用して、2D配列の要素を0軸に沿って1倍シフトする方法を示しています。
結果の出力は次のようになります。
オリジナル: [[1 2 3]
[4 5 6]]
シフト: [[4 5 6]
[1 2 3]]
例2
軸1に沿って同じ操作を実行する別の例を考えてみます。
arr = np。配列(([[1,2,3]、 [4,5,6]])。
印刷((f「オリジナル:{arr}」)。
印刷((f“シフト:{np.roll(arr、shift = 1、axis = 1)}”)。
この場合、ロール関数は軸1に沿ってシフト操作を実行し、以下を返します。
オリジナル: [[1 2 3]
[4 5 6]]
シフト: [[3 1 2]
[6 4 5]]
例3
以下のコードは、roll関数を使用して配列内の要素を5つの場所にシフトする方法を示しています。
arr = np。配列(([[1,2,3]、 [4,5,6]])。
印刷((f「オリジナル:{arr}」)。
印刷((f“シフト:{np.roll(arr、shift = 5、axis = 0)}”)。
ここでは、シフトパラメータを5に設定し、軸を0に設定します。結果の配列は次のようになります。
オリジナル: [[1 2 3]
[4 5 6]]
シフト: [[4 5 6]
[1 2 3]]
例5
シフト値をタプルとして指定することもできます。 このような場合、軸は同じサイズのタプルである必要があります。
以下のサンプルコードを見てください。
arr = np。アレンジ((10)。。形を変える((2、5)。
印刷((f「オリジナル:{arr}」)。
印刷((f“シフト:{np.roll(arr、(2,1)、axis =(1,0))}”)。
上記のコードは次のようになります。
オリジナル: [[0 1 2 3 4]
[5 6 7 8 9]]
シフト: [[8 9 5 6 7]
[3 4 0 1 2]]
閉鎖
この記事では、NumPyロール関数、その機能、パラメーター、および戻り値について説明しました。 また、さまざまな例を使用して関数の使用方法を示しました。
ハッピーコーディング!!
The post NumPy np.roll appeared first on Gamingsym Japan.