Trung bình trượt

Dễ

numpychuỗi thời gian5 test · 12 giây · sai số 1e-5

Tính trung bình trượt cửa sổ k của dãy x: phần tử thứ i của kết quả là trung bình của x[i], x[i+1], …, x[i+k−1]. Kết quả dài n − k + 1.

  • Gợi ý: np.convolve(x, np.ones(k) / k, mode='valid') hoặc dùng tổng tích lũy np.cumsum.

Viết hàm

moving_average(x, k)

Tham số

  • x: mảng 1 chiều (n,)
  • k: độ rộng cửa sổ, 1 ≤ k ≤ n

Trả về

Mảng (n − k + 1,).

Ví dụ

Tham số

x = [1,2,3,4,5]
k = 3

Kết quả

[2.0,3.0,4.0]

Tham số

x = [5,5]
k = 1

Kết quả

[5.0,5.0]

Bài tiếp theo: Nhân ma trận theo lô (batch) →

Python · NumPy

Bấm “Chạy thử” để gọi moving_average() với 2 ví dụ trong đề và so sánh kết quả. Dùng print() thoải mái để gỡ lỗi.

Trung bình trượt — Luyện tập | CodeViệt