ホームページ > ウェブフロントエンド > htmlチュートリアル > 大規模なデータ処理を簡素化するための numpy スライス手法を学習する

大規模なデータ処理を簡素化するための numpy スライス手法を学習する

王林
リリース: 2024-01-26 08:59:19
オリジナル
1120 人が閲覧しました

大規模なデータ処理を簡素化するための numpy スライス手法を学習する

Numpy のスライス操作方法をマスターして、大規模なデータを簡単に処理します。具体的なコード例が必要です。

まとめ:
大規模なデータを処理する場合は、適切なツールを使用してくださいデータ 非常に重要です。 Numpy は、高性能の数値計算ツールを提供する Python で一般的に使用されるライブラリです。この記事では、Numpy のスライス操作方法を紹介し、大規模なデータを処理する際に簡単に操作してデータを抽出する方法をコード例を使用して説明します。

  1. はじめに
    Numpy は Python で一般的に使用される数値計算ライブラリであり、効率的なデータ処理ツールを提供します。スライス操作は Numpy の非常に強力な機能であり、配列の要素にすばやくアクセスして操作するために使用できます。スライス操作は、1 次元、2 次元、および多次元の配列に対して柔軟な操作を実行できるため、ループを記述するプロセスが省略され、操作速度が向上します。
  2. 1次元配列のスライス
    まずは、1次元配列のスライス操作方法を見てみましょう。 10 個の要素を含む 1 次元配列 a があるとします。
import numpy as np

a = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
ログイン後にコピー

コロン: を使用して、スライスの範囲を指定できます。サンプルコードは以下のとおりです。

# 切片操作
b = a[2:6]  # 从下标2到下标5的元素
print(b)  # 输出:[2 3 4 5]

c = a[:4]  # 从开头到下标3的元素
print(c)  # 输出:[0 1 2 3]

d = a[6:]  # 从下标6到末尾的元素
print(d)  # 输出:[6 7 8 9]

e = a[::3]  # 每隔2个元素取一个
print(e)  # 输出:[0 3 6 9]
ログイン後にコピー
  1. 2次元配列のスライス
    次に、2次元配列のスライス操作方法を見ていきます。 2x3 の 2 次元配列 b があるとします。
b = np.array([[0, 1, 2],
              [3, 4, 5]])
ログイン後にコピー

カンマを使用してスライスの範囲を指定できます。サンプル コードは次のとおりです。

# 切片操作
c = b[0]  # 提取第0行的元素
print(c)  # 输出:[0 1 2]

d = b[:, 1]  # 提取所有行的第1列元素
print(d)  # 输出:[1 4]

e = b[:2, 1:]  # 提取前两行以及第二列之后的元素
print(e)  # 输出:[[1 2]
           #       [4 5]]
ログイン後にコピー
  1. 多次元配列のスライス
    スライス操作は、多次元配列を処理する場合にも非常に便利です。 3x3x3 の 3 次元配列 c があるとします。
c = np.array([[[0, 1, 2],
               [3, 4, 5],
               [6, 7, 8]],
              [[9, 10, 11],
               [12, 13, 14],
               [15, 16, 17]],
              [[18, 19, 20],
               [21, 22, 23],
               [24, 25, 26]]])
ログイン後にコピー

カンマの数を増やすことで、スライスの範囲を指定できます。サンプル コードは次のとおりです。

# 切片操作
d = c[0]  # 提取第0个二维数组
print(d)  # 输出:[[0 1 2]
           #       [3 4 5]
           #       [6 7 8]]

e = c[:, 1, :]  # 提取所有二维数组的第1行的元素
print(e)  # 输出:[[ 3  4  5]
           #       [12 13 14]
           #       [21 22 23]]

f = c[:, :, ::2]  # 提取所有二维数组的每隔一个元素的列
print(f)  # 输出:[[[ 0  2]
           #        [ 3  5]
           #        [ 6  8]]
           #       [[ 9 11]
           #        [12 14]
           #        [15 17]]
           #       [[18 20]
           #        [21 23]
           #        [24 26]]]
ログイン後にコピー
  1. 概要
    この記事では、Numpy のスライス操作メソッドを紹介し、スライス操作を使用して大規模なデータを簡単に処理する方法を具体的なコード例を通じて説明します。スライス操作では、1 次元、2 次元、および多次元の配列に対して柔軟な操作を実行できるため、データ処理の効率とコードの可読性が大幅に向上します。 Numpyのスライス操作方法をマスターすれば、大規模なデータの処理が容易になります。

参考文献:

  • Travis E, Oliphant. (2006). NumPy のガイド. 米国: Trelgol Publishing
  • https://numpy 。 org/doc/stable/reference/
  • https://numpy.org/doc/stable/user/quickstart.html

コード例:

import numpy as np

# 一维数组切片
a = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
b = a[2:6]
c = a[:4]
d = a[6:]
e = a[::3]

# 二维数组切片
b = np.array([[0, 1, 2],
              [3, 4, 5]])
c = b[0]
d = b[:, 1]
e = b[:2, 1:]

# 多维数组切片
c = np.array([[[0, 1, 2],
               [3, 4, 5],
               [6, 7, 8]],
              [[9, 10, 11],
               [12, 13, 14],
               [15, 16, 17]],
              [[18, 19, 20],
               [21, 22, 23],
               [24, 25, 26]]])
d = c[0]
e = c[:, 1, :]
f = c[:, :, ::2]
ログイン後にコピー

以上が大規模なデータ処理を簡素化するための numpy スライス手法を学習するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート