15 個の独立したプログラミングチャレンジで、NumPy の知識を確認しながら広げます。入門的な手順説明を追うのではなく、要件、例、開始用ファイルを基に、配列操作、統計、乱数処理、線形代数、文字列、バイナリデータ、信号解析の関数やプログラムを実装します。
内訳は Beginner が 3 個、Intermediate が 12 個です。各シナリオでは、顧客統計の作成、行列問題、ランダムシステムのシミュレーション、FFT による合成信号の解析など、関連する複数の課題へ進むことがあります。NumPy を初めて学ぶより、集中的な練習と自己評価に適した内容です。
学習内容
- 要素ごとの数学関数を実装し、配列の数値データ型を変換する
- 多次元の取引データを集計し、記述統計量と相関を計算する
- インデックス、マスク、形状変更、連結、積み重ね、分割を組み合わせる
- サイコロ、モンテカルロ推定、標本抽出、グラフ、マルコフ連鎖の乱数データを生成する
- 積、逆行列、行列式、SVD、固有値、ランク、線形方程式を扱う
- 多次元配列を並べ替え、値や座標を検索する
- ベクトル化文字列関数とビット演算を符号化データに適用する
- FFT と
einsumで周波数解析、行列表現、テンソル縮約を行う
このコースの対象者
NumPy の基礎を習得済みで、多様な問題から理解の不足を見つけたい学習者向けです。高度な数値計算へ進む前の自主練習に役立ちます。段階的な指導が必要な方は、まず配列の作成、インデックス、形状、関数に慣れてください。
前提知識: Python 関数を作成し、NumPy 配列の作成、インデックス、計算ができる必要があります。後半は主に Intermediate で、統計と線形代数の基礎が役立ちます。
学習環境: 各チャレンジに Ubuntu 22.04 WebIDE、開始用ファイル、課題検証が用意されます。ブラウザで Python を実行し、FFT チャレンジでは Matplotlib で時間領域・周波数領域のグラフも作成します。外部サービスのアカウントは使いません。
よくある質問
ガイド付きラボですか、それとも評価形式のチャレンジですか?
15 個の独立したチャレンジです。要件と例はありますが、完全な解答手順ではなく、自分で実装して用意されたチェックを使います。
NumPy を全く知らない初心者にも適していますか?
最初のコースとしては適しません。カタログ上は Beginner ですが、12 個は Intermediate で、SVD、FFT、ビット操作、テンソル縮約も含みます。事前の NumPy 練習を強く推奨します。
順番に完了する必要がありますか?
15 のシナリオは独立しており、テーマで選べます。ただし複数ステップのチャレンジ内では、後の関数が前の成果を使う場合があるため順番に進めてください。
可視化はどの程度含まれますか?
Matplotlib を必要とするのは FFT チャレンジだけで、波形、パワースペクトル、周波数ピークを描きます。ほかは数値、文字列、バイナリ操作の実装と検証が中心です。




