ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
本稿は Python の NumPy に関する記事です。
子ページを選択してください。
本ページの子ページ
- 配列の作成 —
np.arrayから始める基本 - 多次元配列の作成 — 2D・3D 配列の生成
- 要素の参照 — インデキシング
- 要素の追加 —
np.append - 要素の更新 — 値の差し替え
- 要素の削除 —
np.delete - ブロードキャスト — 形が異なる配列同士の演算
- 多次元配列の構造の確認 —
shape/ndim - 多次元配列を 1 次元配列に変換 —
flatten/ravel - 1 次元配列を多次元配列に変換 —
reshape - 要素の範囲指定 — スライス
- 平均値の算出 —
np.mean - 行列を結合する方法 —
concatenate/stack
NumPyとは?
NumPy (Numerical Python) は、Python で科学計算・機械学習を行うときに事実上必須となる外部ライブラリです。中心となるのは ndarray (N 次元配列) オブジェクトで、Python の標準リストに比べて桁違いに高速に多次元数値計算を行えます。
pandas / scikit-learn / TensorFlow / PyTorch / OpenCV など、主要なデータ系ライブラリの内部でも NumPy が広く利用されており、Python のデータ分析エコシステムの土台になっています。
NumPyの主な特徴
- 高速な配列演算 — ループを書かずにベクトル化で表現 (内部は C で実装)
- 多次元配列 — 1D / 2D / 3D 以上を統一的に扱う
- ブロードキャスト — 形が違う配列同士でも自動で要素演算
- 豊富な数学関数 — 三角関数、指数、対数、統計量、線形代数、FFT 等
- 線形代数 — 行列積、逆行列、固有値、SVD など (
numpy.linalg) - 乱数 — 様々な分布から乱数生成 (
numpy.random) - 他ライブラリとの相互運用 — pandas / scikit-learn / matplotlib との連携が標準
インストールと基本
|
pip install numpy |
|
import numpy as np |
標準リストとの違い
| 項目 | Python list | NumPy ndarray |
|---|---|---|
| 要素型 | 異種混在 OK | 同一型 (dtype) |
| 速度 | 遅い (Pythonループ) | 速い (ベクトル化) |
| メモリ | 多い | 連続領域でコンパクト |
| 多次元 | list の list で表現 | 真の多次元配列 |
| 演算 | 逐次でループ | 要素ごとに一括で計算 |
よく使う関数
| 分類 | 関数 |
|---|---|
| 生成 | np.array、np.zeros、np.ones、np.arange、np.linspace、np.eye |
| 形状操作 | reshape、flatten、ravel、transpose、concatenate、stack |
| 統計 | mean、std、var、median、min、max、sum |
| 線形代数 | np.dot、np.linalg.inv、np.linalg.solve、np.linalg.eig |
| 乱数 | np.random.rand、np.random.randn、np.random.choice |
| 条件 | np.where、np.any、np.all、np.isnan |
注意点
- dtype の違い:
int64とfloat64で精度・メモリが異なる。意図しない型変換に注意 - 巨大配列はメモリを大量に消費。
nbytesで見積もる - ループは禁物:
for i in range(N):ではなくベクトル化/ブロードキャストで書く - NumPy が遅いと感じたら、scipy・numba・Cython・GPU (CuPy)・PyTorch などへの移行も検討
- ファイル入出力は
np.save/np.load(バイナリ) やnp.savetxt/np.loadtxt(テキスト)
関連
- 親カテゴリ: 外部ライブラリ (Python)
- Python本体: Python
- 類似/関連: pandas、scikit-learn、matplotlib、SciPy
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
- NumPy
- Matplotlib
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 Spring Frameworkのアノテーション一覧
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- PHPでのファイルアップロード方法|multipart/form-dataと$_FILES 2026-08-07 17:15:57
- PHP $_SERVERとは|DOCUMENT_ROOT・PHP_SELFなど主な要素 2026-08-07 17:15:57
- Scratchのアカウントの作り方|メールアドレスとユーザー名の登録手順 2026-08-07 17:15:57
- djangoにおけるMVCアプリケーション実装例 2026-08-07 17:15:57
- Bluetoothとは|仕組み・BLEとClassicの違い・用途 2026-08-07 17:15:57
- Spring Bootのテスト入門|@SpringBootTestとJUnitでの単体・結合テスト 2026-08-07 17:15:57
- Java とは?言語仕様・JVM・主要フレームワーク一覧 2026-08-07 17:15:56
- インストール方法(Windows版) 2026-08-07 17:15:56
- APIキー取得方法 2026-08-07 17:15:56
- 【PHPフレームワーク】Laravelの使い方 2026-08-07 17:15:56
- Scratch 作品の公開方法 2026-08-07 17:15:56
- Google OAuth 2.0 認証の実装方法 2026-08-07 17:15:56
- データベースとは?RDB / NoSQL / SQL の基礎 2026-08-07 17:15:56
- インストール(eclipseプラグイン) 2026-08-07 17:15:56
- Spring Frameworkの使い方 2026-08-07 17:15:56
コメントを削除してもよろしいでしょうか?