data_m
Statistics + Performance 중심의 Octave 학습 예제
ex-recv/02/02_mjy/data_m.m
함수 시그니처
function data_m = data_mean(data) 전체 코드
전체 코드를 복사해서 Octave에서 바로 실행할 수 있습니다.
% 데이터 평균 계산
% 입력: data 데이터 값, 출력: data_m 데이터 평균값
function data_m = data_mean(data)
n = length(data); % n : 데이터 개수
data_sum = sum(data); % data_sum : 데이터 합계
data_m = data_sum/n; % data_m : 데이터 평균 값
end
# function data_m = data_mean(data)
# # input:
# # data : data vector (1D array) Nx1, 1xN
# # output:
# # data_m : mean of data
# nn = length(data); % n : 데이터 개수
# data_m = sum(data) / nn;
# end
# function data_m = data_mean(data)
# # input:
# # data : data matrix (2D array) NxM (10000, 3)
# # output:
# # data_m : mean of data (1xM)
# nn = size(data, 1); % nn: length of data
# mm = size(data, 2); % mm: number of case
# data_m = zeros(1, mm);
# data_m = zeros(mm, 1);
# for j = 1:mm
# data_m(j) = sum(data(:, j)) / nn;
# end
# end
# pkg load statistics
# # data 100, 3
# # data_s 100, 1
# data = rand(100, 3);
# data_s = sum(data, 2);
# disp(size(data_s))
# data = rand(3, 100 );
# data_s = sum(data, 1);
# disp(size(data_s))
코드 해설
목적
Statistics + Performance 중심의 Octave 학습 예제
입력
- 파라미터: data
출력
- 반환값: data_m
- 콘솔 텍스트 출력
실행 흐름
- 데이터 평균 계산
- 입력: data 데이터 값, 출력: data_m 데이터 평균값
- nn = length(data); % n : 데이터 개수
핵심 함수/주제
sumsizedatadisplengthrandzerosdata_m
실습 과제
- 같은 연산을 내장 함수와 사용자 함수 두 방식으로 계산해 오차를 비교해보세요.
- 핵심 함수 sum의 인자를 한 가지 바꿔 결과 변화를 기록해보세요.
- "데이터 평균 계산 -> 입력: data 데이터 값, 출력: data_m 데이터 평균값" 흐름을 함수 단위로 분리해 리팩터링해보세요.
학습 팁
- 입력 파일 경로가 현재 작업 디렉터리 기준인지 먼저 확인하세요.
같은 카테고리의 다른 코드
- 수치미분
ex-recv/01/01-CJW-20250321/수치미분.m - main_cjw
ex-recv/01/01-CJW-20250321/main_cjw.m - main-my_diff
ex-recv/01/01-JKH-20250319/main-my_diff.m - hw_1_kim-gpt
ex-recv/01/01-KSG-20250318/hw_1_kim-gpt.m - hw_1_kim
ex-recv/01/01-KSG-20250318/hw_1_kim.m - [Octave] HW#1
ex-recv/01/01-LSH-20250319/[Octave] HW#1.m - Octave_Moon_250319
ex-recv/01/01-MJY-20250319/Octave_Moon_250319.m - Octave01_Park,jm_250319
ex-recv/01/01-PJM-20250319/Octave01_Park,jm_250319.m - [Octave]250318_RYU_poly,dff
ex-recv/01/01-RJW-20250321/[Octave]250318_RYU_poly,dff.m - 과제1_신찬영연구원
ex-recv/01/01-SCY-20250319/과제1_신찬영연구원.m