Windows11 WSL2 Ubuntu Python Ⅱ

データのスライシング(1次元)

ここからは、1次元配列データのスライシングについて説明していきます。
NumPy の ndarray は多次元配列を扱うデータ構造で、スライシングという機能を備えています。
ここでは、最も簡単な1次元配列データをスライスします。

  1. NumPy ndarray 1次元配列作成

    簡単な NumPy の ndarray 1次元配列を作成します。
    import numpy as np
    x = np.arange(11)
    array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
    0 ~ 10 の11個のデータが作成されました。

  2. 1次元配列 x の内容を確認

    x[0] = 0
    x[1] = 1
    ・・・・・・・・
    x[9] = 9
    x[10] = 10
    負のインデックス番号を使うこともできます。
    x[-1] = 10
    x[-2] = 9
    ・・・・・・・・
    x[-10] = 1
    x[-11] = 0
    負のインデックスはわかりにくいですね。

  3. スライス指定方法

    [
    開始位置(始点)start:
    終了位置(終点)stop :
    間隔(step)
    ]
    と書くことでそれぞれの次元ごとに複数の要素を抽出することができます。
    stop に指定されたインデックスはスライシングの際抜き出されません。
    これが曲者です。
    例①、2番目から8番目まで1個おきにスライス。
    x[2:9:1]
    結果は
    array([ 2, 3, 4, 5, 6, 7, 8])
    です。
    例②、0 番目から10番目まで1個おきにスライス。
    x[0:11:1]
    結果は
    array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
    です。
    10番目を指定するために11を設定しました。
    同じことを負のインデックスを使用して
    x[-11:-1:1]
    でうまく行くかと思いきや
    array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
    となってラストの x[10] = 10 がありません。
    残念!

  4. スライス指定省略

    スライス範囲が最初から、または最後まで、ステップは省略することができます。
    開始位置(始点)start省略 :stop:step
    終了位置(終点)stop 省略 start::step
    間隔(step)省略     start:stop
    例③、0 番目から10番目まで1個おきに負のインデックスを使用してスライス。
    終了位置(終点)stop と間隔(step)を省略して
      x[-11:]
    結果は
    array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
    となってうまく行きました。

  5. ステップを -1 指定

    ステップを -1 指定すると逆順に並べ代えることができます。
    x[::-1]
    結果は
    array([10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0])


ここまでで、1次元配列データのスライシングができるようになりました。
引き続き、多次元配列を扱うデータ構造でスライシングして行きます。


  • データのスライシング に進む
  • データ結合ファイル動作確認 に戻る
  • pandas を使う に戻る
  • scikit-learn 動作ファイル確認 に戻る
  • scikit-learn インストール に戻る
  • 相関係数まとめ に戻る
  • NumPy を使う に戻る
  • ロ-ソク足表示ファイル作成 に戻る
  • pandas インスト-ル に戻る
  • Windows11 WSL2 Ubuntu Python パッケージ に戻る
  • 70VPS に戻る