Numpyの行列からデータを等間隔で抽出する方法は?
NumPyのarange関数を使用することで、データを均等間隔で抽出することができます。arange関数は、開始値、終了値、およびステップ数を指定することができる均等間隔の配列を生成することができます。
以下は、arange関数を使用してデータを等間隔で抽出する方法を示すサンプルコードです。
import numpy as np
# 创建一个矩阵
matrix = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
# 按行等间隔抽取数据
row_indices = np.arange(0, matrix.shape[0], 2)
row_samples = matrix[row_indices, :]
print("按行等间隔抽取数据:")
print(row_samples)
# 按列等间隔抽取数据
col_indices = np.arange(0, matrix.shape[1], 2)
col_samples = matrix[:, col_indices]
print("按列等间隔抽取数据:")
print(col_samples)
結果は次のようになります:
按行等间隔抽取数据:
[[1 2 3]
[7 8 9]]
按列等间隔抽取数据:
[[1 3]
[4 6]
[7 9]]
コードの上に、最初にarange関数を使用して行や列のインデックスを生成し、そのインデックスを使用してデータを抽出します。ここで、arange関数の最初のパラメーターは開始値であり、2つ目のパラメーターは終了値(含まれていない)、3つ目のパラメーターはステップです。