sampleData.mat
unique함수는 중복이 되는 여러 원소들의 교집합을 몰아준다. 즉 {A,A,C,C,C, B} 라면 {A,B,C}를 나타낸다
accumarray는 같은 교집합이 되는 경우, 해당값을 더하는 기능을 한다,
DATE SALES
20131120 5
20131120 1
20131125 2
20131125 3
...
가령
20131120 6
20131125 5
DATE는 날자가 될수도 있고, 남성/여상이 될수도 있고, 1학년 2학년 3학년 등에도 응용이 가능하다.
아래에서 uique함수를 사용한 이유는 어떤 이유인지는 몰라도 accumarray함수가 20131120등 긴 숫자의 경우를 인식히지 못해서
이를 잘 인식하는 unique함수로 먼저 필터링 한 후 다시 accumarray로 적용하기 위해서다.
둘다 대단한 기능을 가진 함수다. 아님 loop을 돌려랴 하는데 속도가 많이 느리다.
data
DATE=data(:,1);
SALES=data(:,2);
[newDate,~,INDEX] = unique(DATE, 'rows');
sumSales = accumarray(INDEX, SALES, []);
var vglnk = {api_url: '//api.viglink.com/api', key: '0dff9ade2d1125af6c910069b6d6e155'};
첫댓글 맥쿼리대 학생은 아니지만, 급한 차에 가입해서 글 보고갑니다. 매우 도움이 되었습니다. 감사합니다.
저도 컴퓨터 언어를 독학으로 배우느라 고생을 많이 해서 내용을 공개하는 것이니, 부담없이 오셔서 보시고 질문도 하세요.