2017-03-16 5 views
0

나는 무작위 걸음 걸이를 만들려고 노력하고 있습니다. 이것은 내가 작성한 코드입니다.Matlab 무작위 산책

n=50; 
p=0.5; 

Y=zeros(n,1); 
X=zeros(n,1); 
X(1)=0; 

for i=1:length(n) 
    Y(i,1)=(rand(1)<=p); 
end 

for i=1:length(n) 
    X(i+1)=X(i)+(2*Y(i)-1); 
end 
plot(1:n,X,'.-') 

그러나, 임의 베르누이 변수를 저장이 내가 확인하는 경우 Y에, 나는 모두 0을 얻는다. 왜 그렇게됩니까?

나는 this과 같은 음모가 있습니다.
랜덤 워크처럼 보이지 않습니다. 누군가가 내가 잘못

+3

'길이 (n은)'1, 그것은 숫자이기 때문에. 당신은'for i = 1 : n'을 원합니다. –

+0

@NoelSeguraMeraz 고맙습니다. –

답변

0

하고 노엘의 의견에 대해서하고 무엇을 말해 주시겠습니까, 실제로 당신은 다음과 같이 결국 X에서 n+1 요소가 대신으로 length(n)n로 대체해야하며, 플롯 기능은 plot(1:(n+1),X,'.-')를해야한다 :

n=50; 
p=0.5; 

Y=zeros(n,1); 
X=zeros(n,1); 
X(1)=0; 

for i=1:n 
    Y(i,1)=(rand(1)<=p); 
end 

for i=1:n 
    X(i+1)=X(i)+(2*Y(i)-1); 
end 
plot(1:(n+1),X,'.-') 

는 줄거리보다 랜덤 워크 같습니다

enter image description here