Matlab如何生成正太分佈隨機數,並畫出直方圖

時間 2021-08-30 10:51:39

1樓:匿名使用者

%by dynamic

%see also

n=20;%二項分佈選用的引數n

p=0.8;%引數p

data=binornd(n,p,[100,100]);%每列一個樣本

data=mean(data); %求均值hist(data,50)

2樓:快樂的秋風

如果需要的是頻率直方圖,可以考慮如下做法:

x=normrnd(mu,sigma,m,n): %生成m×n形式的正態分佈的隨機數矩陣。

[a,b]=hist(x);

bar(b,a/sum(a))%頻數直方圖比如:x=normrnd(1,1,100,1) %生成m×n形式的正態分佈的隨機數矩陣。

[a,b]=hist(x);

bar(b,a/sum(a))%頻數直方圖建議:自己操作一遍以檢驗之。

3樓:

功能:生成服從正態分佈的隨機數

語法:r=normrnd(mu,sigma)r=normrnd(mu,sigma,m)r=normrnd(mu,sigma,m,n)說 明:

r=normrnd(mu,sigma):生成服從正態分佈(mu引數代表均值,delta引數代表標準差)的隨機數。輸入的向量或矩陣mu和sigma必須形式相同,輸出r也和它們形式相同。

標量輸入將被擴充套件成和其它輸入具有 相同維數的矩陣。

r=norrmrnd(mu,sigma,m):生成服從正態分佈(mu引數代表均值,delta引數代表標準差)的 隨機數矩陣,矩陣的形式由m定義。m是一個1×2向量,其中的兩個元素分別代表返回值r中行與列的維數。

r=normrnd(mu,sigma,m,n): 生成m×n形式的正態分佈的隨機數矩陣。

畫直方圖用函式bar(x,y)

4樓:匿名使用者

n=10000;

data=randn(1,n);

xx=linspace(min(data),max(data),10);

p=hist(data,xx)/n;

bar(xx,p)

matlab生成隨機數,畫出直方圖後加一條標準正態線,怎麼做?

5樓:嚇棟棟

clear

clcr=1+1.0.*randn(1,100) ;

hist(r,-4:.1:4);

hold on

x=-4:0.1:4;

y=gaussmf(x,[1 0]);     %gaussmf(x,[σ,μ])

x = x+1;

plot(x,y,'r')

已知一組資料,如何用matlab畫出它的概率密度分佈圖,請給出具體程式

6樓:紗織守鶴

clear all;

clc;

data = importdata("n(0,1).txt");%這裡n(0,1).txt為你要匯入的資料

[a, b] = normfit(data);%求出你給的服從正態分佈的資料的均值和標準差,並賦給a,b

d = normpdf(data,a,b);%求出均值為a,標準差為b的正態分佈密度函式在data各點的值

figure;

plot(data,d,'.');%以data為橫座標,d為縱座標畫出圖形,『.』為 圖形各點的樣式

7樓:藍芽刀

例項程式,應對普通情況應該夠了,但是有些特殊情況不合適,不過大多數情況不必要求非常準確,如果要很準確,自行修改下。

% 資料

ydata = random('normal',0,1,1,1024);

% 準備一些變數

bins = 100; %分100個區間進行統計

maxdat = max(ydata);%最大值

mindat = min(ydata);%最小值

bin_space = (maxdat - mindat) / bins;%每個bin寬度

xtick = mindat : bin_space : maxdat - bin_space;

% 求pdf

distribution = hist(ydata,bins);%使用直方圖得到資料落在各區間的總數

pdf = bins * distribution / ((sum(distribution )) * (maxdat - mindat));%計算pdf

% 畫圖

figure;

plot(xtick,pdf);

% 驗證:sum(pdf) * bin_space應該接近1

8樓:

一般通過已知資料,求取概率密度。需要統計學的知識。大致是畫頻譜圖。具體好像是求什麼頻數等等。但是這個也不是太難。

你照著相關書籍,就應該能寫程式了。至於重複數值,那肯定是可能的啊。因為一個未知變數都能夠重複出現,畢竟是概率事件。

matlab中,如何根據已知的直方圖,近似求得其概率密度函式圖呢? 15

9樓:真

舉個例子

x=normrnd(10,4,1380000,1);%生成1380000個均值為10標準差為4的正態分佈隨內機數

[mu,sigma]=normfit(x(:))%對這些資料進行容正態分佈擬合

hist(x,-10:.1:60);axis([-10,60,0,14000]);

figure

fplot(@(x)normpdf(x,mu,sigma),[-20,40]);ylim([0,.12])

用matlab生成服從標準正態分佈的8 8矩陣,怎麼實現

很簡單randn 8,8 下次需要matlab可以諮詢我們團隊,我們 程式得 有一個8 8的矩陣a,生成一個與a同階的正態分佈的隨機矩陣b,用matlab的語句寫 matlab 生成 a,b 內正態分佈矩陣 既然是正態分佈,那麼樣點數分佈就是整個數軸,不可能有所謂 a,b 內的正態分佈,也許你需要的...

matlab如何將運算生成的資料匯出到中

一生之水 如果資料較少,直接貼上複製就可以。多了就不知道了 clcclear all format long mat 12 12 12 13 14 14 leng length mat fid fopen c documents and settings zhang desktop example....

正溴丁烷的製備如何減少副反應的生成

假面 加料時,在水中加濃硫酸後待冷卻至室溫,再加正丁醇和溴化鈉 溴化鈉要研細,且應分批加。反應過程中經常振搖,防止溴化鈉結塊和使反應物充分接觸 嚴格控制反應溫度,保持反應液呈微沸狀態 加料時加適量的水稀釋濃硫酸。1 溴正丁烷具有脂肪族溴化物的通性,化學性質活潑,能與多種化合物反應。在熱的強鹼的水溶液...