はじめに
このチャレンジでは、Python の NumPy モジュールを使用する練習を行います。基本的な数学演算や配列操作をカバーする、NumPy 配列を操作するためのいくつかの一般的な関数を実装します。必要なファイルは、左側のファイルエクスプローラーにあらかじめ用意されています。
このチャレンジでは、Python の NumPy モジュールを使用する練習を行います。基本的な数学演算や配列操作をカバーする、NumPy 配列を操作するためのいくつかの一般的な関数を実装します。必要なファイルは、左側のファイルエクスプローラーにあらかじめ用意されています。
最初のタスクは、2 つの NumPy 配列を要素ごとに乗算(アダマール積)する関数を作成することです。これは、最初の配列の各要素を、2 番目の配列の対応する要素と掛け合わせることを意味します。
multiply_arrays.py ファイル内の multiply_arrays 関数を完成させてください。multiply_arrays としてください。a と b を受け取る必要があります。a と b を要素ごとに乗算した結果である、新しい NumPy 配列を返す必要があります。関数を実装した後、スクリプトを実行して結果を確認してください:
python3 multiply_arrays.py
出力:
Input a: [1 2 3]
Input b: [4 5 6]
Element-wise multiplication result: [4 10 18]
Expected: [4 10 18]
次に、行列の積(行列乗算)を実装します。要素ごとの乗算とは異なり、行列の積は線形代数の特定の規則に従い、2 つの行列の内側の次元が一致している必要があります。
matrix_multiply.py ファイル内の matrix_multiply 関数を完成させてください。matrix_multiply としてください。a と b を受け取る必要があります。a と b の行列積の結果である、新しい NumPy 配列を返す必要があります。関数を実装した後、スクリプトを実行して結果を確認してください:
python3 matrix_multiply.py
出力:
Input matrix a:
[[1 2]
[3 4]]
Input matrix b:
[[5 6]
[7 8]]
Matrix multiplication result:
[[19 22]
[43 50]]
Expected:
[[19 22]
[43 50]]
このステップでは、NumPy 配列を転置(Transpose)する関数を作成します。配列を転置すると、その行と列が入れ替わります。
transpose_array.py ファイル内の transpose_array 関数を完成させてください。transpose_array としてください。a を受け取る必要があります。関数を実装した後、スクリプトを実行して結果を確認してください:
python3 transpose_array.py
出力:
Original array:
[[1 2 3]
[4 5 6]]
Transposed array:
[[1 4]
[2 5]
[3 6]]
Expected:
[[1 4]
[2 5]
[3 6]]
次に、NumPy 配列の形状を変更(Reshape)する関数を作成します。形状変更は、データを変更することなく配列の次元を変更します。要素の総数は同じである必要があります。
reshape_array.py ファイル内の reshape_array 関数を完成させてください。reshape_array としてください。a とタプル shape を受け取る必要があります。a のデータを保持しつつ、shape で指定された新しい次元を持つ新しい配列を返す必要があります。関数を実装した後、スクリプトを実行して結果を確認してください:
python3 reshape_array.py
出力:
Original array: [1 2 3 4 5 6]
New shape: (2, 3)
Reshaped array:
[[1 2 3]
[4 5 6]]
Expected:
[[1 2 3]
[4 5 6]]
ユークリッド距離は、2 点間の直線距離を測定する一般的な方法です。ここでのタスクは、2 つの 1 次元 NumPy 配列間のこの距離を計算する関数を実装することです。
2 つのベクトル a と b の間のユークリッド距離の公式は以下の通りです:
d(a, b) = \sqrt{\sum\_{i=1}^{n}(a_i - b_i)^2}
euclidean_distance.py ファイル内の euclidean_distance 関数を完成させてください。euclidean_distance としてください。a と b を受け取る必要があります。関数を実装した後、スクリプトを実行して結果を確認してください:
python3 euclidean_distance.py
出力:
Point a: [1 2 3]
Point b: [4 5 6]
Euclidean distance: 5.196152422706632
Expected: 5.196152422706632
このチャレンジでは、NumPy の基本的な操作を練習しました。要素ごとの乗算、行列の積、配列の転置、形状変更、およびユークリッド距離の計算を行う関数を実装しました。これらのスキルは、Python を使用したデータ分析、機械学習、および科学計算において不可欠なものです。