본문 바로가기

MATLAB9

matlab, nargin, nargout 주의점. [matlab] matlab에서 nargin, nargout은 각각, 함수의 input parameter 개수, output parameter 개수를 담는 변수이다. 사용법은 function [o1, o2, o3, o4] = test[in1, in2] ... narginnargout... end 이렇게 내부에서 쓰거나 함수 외부에서 nargin('test')nargout('test')이렇게 하면 nargin은 2, nargout 은 4가 나와야 한다. 하지만 함수 외부에서 쓰면 잘 나오는데 내부에서는 2,4가 나오지 않더라?? 왜 인고 고민을 한참 해보니 내부에서 사용하면 정의된 parameter의 개수를 return해 주는게 아니라, 실제 사용하고 있는 parameter의 개수를 리턴하기 때문이었다. .. 2014. 1. 22.
multiple comparison(다중비교)와 false discovery rate(FDR) 어떤 실험군(A)이 대조군(B)에 비해 통계적으로 유의미한 차이가 있는지 5%유의수준으로 검정결과가 나왔다고 하자. 이를 토대로 A는 B와 유의미한 차이가 난다. 라고 말할수 있지만 검정군이 3가지 이상 ( ex.. 수백가지 이상, fMRI의 특정 영역의 voxel 들이 다른 영역보다 활성화 되었는가? 를 검정할때) 인 경우, 마찬가지로 5%유의수준으로 유의미함을 말할 수 있을까? 예를들어, 실험군이 1000개가 있는 경우를 가정하자, 실험군1이 나머지 실험군 999개 보다 p 2013. 12. 6.
matlab read and play wav files MATLAB에는 웬만한건 다 있다 역시 사운드 파일 읽고 재생하는건 기본 file = 'beep-1.wav'; [y, Fs, nbits] = wavread(file); file2 = 'button-11.wav'; [y2, Fs2, nbits2] = wavread(file2); sound(y,Fs); sound(y2,Fs2); 이렇게 하면 되는데, y는 사운드데이터가 들은 벡터, Fs 는 데이터가 encode된 Hz. nbits는 encode bit수 이다. matlab help 에 나와있듯 Number of BitsMATLAB Data TypeData Range 8uint8 (unsigned integer) 0 2013. 2. 14.
print matlab figure with high resoluation Matlab 의 figure를 고해상도 저장할때 print에 -r300 옵션 붙여서 저장 하면 300dpi로 저장은 되나 그림들이 뒤틀린다. 그래서 출력 모드 설정을 따로 해주어야 한다. gra = figure; set(gra,'Position',[100 100 1000 500]) % 이건 모니터 상에 모이는 위치 및 크기 설정 set(gra,'PaperUnits','inches','PaperPosition',[0 0 2 1]*6) % 출력 크기 설정 filename = 'test.eps'; print(gra,'-depsc2','-r300',filename) 이렇게 하면 [0 0 12 6] * 300 가로 3600 세로 1800 크기의 EPS 이미지가 출력된다. (벡터이미지의 크기라는것이 정해져 있는건 .. 2013. 2. 7.