ブロードキャストおよび一般機能
ブロードキャストは NumPy の中核的な概念であり、スカラーまたは 配列 と他の形状の異なる配列に対して要素ごとの操作を実行できるようにします。ユニバーサル関数 (ufuncs) は、配列の各要素に適用される事前定義された関数です。ブロードキャストと ufuncs を組み合わせることで、効率的かつ簡潔なデータ操作を実現できます。
一般的な関数の例:
np.multiply(A, B)
np.greater(A, B)
np.sin(x)
高度なインデックス作成とスライス
高度な インデックス とスライシングにより、標準のインデックスを超えた柔軟なデータ アクセスが可能になります。ブールインデックスでは特定の基準を満たす要素が選択されますが、ファンシーインデックスと高度なスライスでは、配列またはリストを使用して複数の軸上の要素にインデックスを付けることができます。
高度なインデックス作成の例:
A[A > 5]
A[np.array([0, 2, 4])]
A[::2, 1::2]
配列の集約と削減
集計関数は、配列内のデータをグループ化または要約するために使用されます。リダクション関数は、配列内の要素を単一のスカラー値に削減します。一般的な集計関数には次のものがあります。
np.sum()
np.mean()
np.max()
np.min()
並べ替えと一意の値
Sortアルゴリズム は配列の要素を並べ替え、一意の値関数は配列内の一意の要素の set を返します。これらの関数は、データ分析とデータ クリーニングに非常に役立ちます。
ソート例:
np.sort(x)
np.sort(A, axis=1)
一意の値の例:
np.unique(A)
np.unique(A, return_counts=True)
ブロードキャスト、高度なインデックス作成、および集約の組み合わせ
複雑なデータ操作は、ブロードキャスト、高度なインデックス作成、および集約を組み合わせることによって実現できます。たとえば、配列内の特定の行または列を合計したり、特定の条件を満たす要素をカウントしたりできます。
######例:######各列の合計: np.sum(A, axis=0)
np.mean(A[A > 5])
パフォーマンスの最適化NumPy のベクトル化、ブロードキャスト、および効率的な基盤実装を利用することで、 データ操作のパフォーマンスを 最適化できます。その他の
パフォーマンス最適化のヒントは次のとおりです。 不必要なコピーを作成しないでください
ループの代わりに配列式を使用するNumPy は、次のような他の高度な機能も提供します。
アレイブロードキャストファンシーインデックス
科学コンピューティング ###画像処理###
機械学習
以上がNumPy Advanced: データ操作の秘密を明らかにするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。