日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

matlab生成多组多维高斯分布数据

發(fā)布時間:2023/11/27 生活经验 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 matlab生成多组多维高斯分布数据 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

matlab生成多組多維高斯分布數(shù)據(jù)

之所以寫這么一個函數(shù),是因為在練習(xí)用matlab實現(xiàn)聚類分析,用matlab生成的高斯分布數(shù)據(jù)可以作為很好的數(shù)據(jù)。當(dāng)然,直接load進(jìn)鳶尾花數(shù)據(jù)集也可以拿來練手,到后邊再對鳶尾花數(shù)據(jù)集進(jìn)行分析。

代碼如下:

function data = generate_data_GMM(dim, model_class, m, s, num)%   生成多組多維高斯分布數(shù)據(jù)%   dim為高斯分布的維數(shù)%   model_class為生成的數(shù)據(jù)組數(shù)%   m為高斯分布的期望值,大小為model_class*dim%   s為高斯分布的協(xié)方差陣,大小為dim*dim*model_class%   num為各組高斯分布的數(shù)據(jù)量,其大小為model_class*1%   返回值data為生成的數(shù)據(jù),其大小為num*(dim+1)%   前dim列為高斯分布數(shù)據(jù),第(dim+1)列為組的類別編號%   該函數(shù)用于生成多組高斯分布數(shù)據(jù),可為聚類算法提供數(shù)據(jù)data = [];for i = 1 : model_classdata1 = ones(num(i), dim + 1);data1(:, (1 : dim)) = mvnrnd(m(i, :), s(:, :, i), num(i));for j = 1 : num(i)data1(j, dim + 1) = i;enddata = [data; data1];end
end

主函數(shù)調(diào)用:

model_class = 2;
dim = 3;
% 期望值
m = [0, 0, 0;2, 2, 2];
% 協(xié)方差陣
s(:, :, 1) = [0.2, 0, 0;0, 0.2, 0;0, 0, 0.2];
s(:, :, 2) = [0.5, 0, 0;0, 0.5, 0;0, 0, 0.5];
num = [10000, 5000];
data = generate_data_GMM(dim, model_class, m, s, num);% 提出每組數(shù)據(jù)
data1 = data((data(:,4) == 1), (1:3));
data2 = data((data(:,4) == 2), (1:3));% 繪圖分析(以第二組數(shù)據(jù)為例)
figure(1)
plot(data2(:, 1), data2(:, 2), '.k');
axis equal;
figure(2)
plot(data2(:, 2), data2(:, 3), '.k');
axis equal;
figure(3)
plot(data2(:, 1), data2(:, 3), '.k');
axis equal;
figure(4)
histogram2(data2(:, 1), data2(:, 2), 30, 'FaceColor','flat')

繪圖:

總結(jié)

以上是生活随笔為你收集整理的matlab生成多组多维高斯分布数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。