Octave Atelier

코드와 해설을 함께 읽는 학습 문서

Code Detail

moving_statistics

Statistics + Performance 중심의 Octave 학습 예제

ex-recv/02/02_rjw/moving_statistics.m

목록으로

코드를 복사해 Octave에서 바로 실행할 수 있습니다.

카테고리

Submission Archive

submission

코드 길이

20

lines

작성자

-

날짜 정보 없음

패키지

none

pkg load

함수 시그니처

function [moving_mean, moving_var, moving_std, moving_rms] = moving_statistics(data, window_size)

전체 코드

20 lines

%30일 이동 평균 계산 함수
function [moving_mean, moving_var, moving_std, moving_rms] = moving_statistics(data, window_size) %입력: data(종가), window_size(30일)
  n = length(data);             
  n_window = n - window_size + 1;                                                 %출력: moving_mean, moving_var, moving_std, moving_rms
  moving_mean = zeros(n_window, 1);
  moving_var = zeros(n_window, 1);
  moving_std = zeros(n_window, 1);
  moving_rms = zeros(n_window, 1);

  for i = 1:(n_window)
    window_data = data(i:i + window_size - 1);  % 30일 데이터 슬라이싱
    moving_mean(i) = mean(window_data);
    moving_var(i) = var(window_data);
    moving_std(i) = std(window_data);
    moving_rms(i) = sqrt(mean(window_data.^2));
  end
end

코드 해설

목적

  • Statistics + Performance 중심의 Octave 학습 예제

입력

  • 파라미터: data
  • 파라미터: window_size

출력

  • 반환값: moving_mean
  • 반환값: moving_var
  • 반환값: moving_std
  • 반환값: moving_rms

실행 흐름

  1. 코드 상단부터 순차 실행

핵심 함수

  • zeros
  • data
  • mean
  • length
  • moving_mean
  • moving_rms
  • moving_std
  • moving_var

실습 과제

  • 같은 연산을 내장 함수와 사용자 함수 두 방식으로 계산해 오차를 비교해보세요.
  • 핵심 함수 zeros의 인자를 한 가지 바꿔 결과 변화를 기록해보세요.

같은 카테고리 코드

이전 코드 main_02_rjw 다음 코드 read_csv_data