[問題] 產生正負1和3 四個數字已回收

看板MATLAB作者 (maxwhale)時間16年前 (2009/08/08 01:31), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
我要產生正負1和3,4個數字 而且4個數字的出現機率要一樣 我的方法如下 X=randn(1,1000000); for i=1:1000000 if X(i)<0 X(i)=3; else X(i)=1; end end Xs=X.*(sign(randn(1,1000000))+j*sign(randn(1,1000000))); 要如何利用一行指令來完成呢? 還有如果再加上一個雜訊如 N=sqrt(1/2)*(randn(1,1000000)+j*(randn(1,1000000)); Y=Xs+N 當Y小於-2判斷成-3 Y介於-2~0之間判斷為-1 Y介於0~2之間判斷為1 Y大於2判斷為3 可以用一行指令完成嘛? 謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.155.191

08/08 02:20, , 1F
randint(M,N,4)*2-3 ,M,N是size
08/08 02:20, 1F
文章代碼(AID): #1AV6JR8T (MATLAB)
文章代碼(AID): #1AV6JR8T (MATLAB)