Matlab之rand函式的使用

2021-06-22 13:44:52 字數 1351 閱讀 7242

rand函式的意義:

rand是0-1的均勻分布,randn是均值為0方差為1的正態分佈 用法自己help rand或者help randn一下就知道了 rand(n)或randn(n)生成n*n的隨機數矩陣 rand(n,m)或randn(m,n)生成m*n的隨機數矩陣。

y = rand(n)

y = rand(m,n)

y = rand([m n])

y = rand(m,n,p,...)

y = rand([m n p...])

y = rand(size(a))

rand

s = rand('state')

描述rand函式產生由在(0, 1)之間均勻分布的隨機數組成的陣列。

y = rand(n) 返回乙個n x n的隨機矩陣。如果n不是數量,則返回錯誤資訊。

y = rand(m,n) 或 y = rand([m n]) 返回乙個m x n的隨機矩陣。

y = rand(m,n,p,...) 或 y = rand([m n p...]) 產生隨機數組。

y = rand(size(a)) 返回乙個和a有相同尺寸的隨機矩陣。

1,rand(3)*-2   rand(3)是乙個3*3的隨機矩陣(數值範圍在0~1之間)

然後就是每個數乘上-2

2 ,用matlab隨機產生60個1到365之間的正數   1+fix(365*rand(1,60));

3,用rand函式隨機取100個從-1到1的數x1,x2,...,x = rand(1,100) * 2 - 1

rand函式是產生0到1的隨機分布

randn函式是產生標準正態分佈

randint是產生整數隨機數,預設為0和1

>> rand(3)

ans =

0.8147    0.9134    0.2785

0.9058    0.6324    0.5469

0.1270    0.0975    0.9575

>> randn(3)

ans =

-0.4326    0.2877    1.1892

-1.6656   -1.1465   -0.0376

0.1253    1.1909    0.3273

>> randint(3)

ans =

1     1     0

0     0     0

1     1     1

經過實踐,以下做法我覺得不錯:

>> randi([0,1],1,5)

ans =

1     1     1     0     0

這就是在[0,1]的整數選擇,產生1*5的矩陣。

MATLAB之fprintf函式的具體使用方法

fprintf函式可以將資料按指定格式寫入到文字檔案中。其呼叫格式為 資料的格式化輸出 fprintf fid,format,variables 按指定的格式將變數的值輸出到螢幕或指定檔案 fid為檔案控制代碼,若預設,則輸出到螢幕 format用來指定資料輸出時採用的格式 d 整數 e實數 科學計...

MATLAB之fprintf函式的具體使用方法

例1 建立乙個字元矩陣並存入磁碟,再讀出賦值給另乙個矩陣。a string fid fopen d char1.txt w fprintf fid,s a fclose fid fid1 fopen d char1.txt rt fid1 fopen d char1.txt rt b fscanf ...

Matlab 1 隨機函式rand使用的技巧

由於我的演算法中的引數初始值是在一定範圍內隨機給的,老闆說要多跑幾次計算結果的均值和方差以減小隨機性帶來的影響,我跑了十遍發現結果怎麼都一樣,原來是rand出了問題。1.matlab中的rand產生的是0到1 不包括1 的隨機數,rand函式生成的是偽隨機數,是由種子遞推出來的,相同的種子,生成相同...