ガウス データセットを生成したいと考えています。このデータセットには、次の分布を持つ 4 つの 2 次元ガウス クラスからランダムに抽出された合計 800 個のサンプルが含まれています。
MATLAB でそれを行うにはどうすればよいですか。私は MATLAB の専門家ではありません。
以下にはStatisticsToolboxが必要です。
% The means of the Gaussians
mu = [-3,0;0,0;3,0;6,0];
% The covariance matrix
sigma = [0.5,0.05;0.05,0.5];
% The mixing proportions of the Gaussians
p = [0.25,0.25,0.25,0.25];
% Make a Gaussian mixture distribution
myMixtureDistribution = gmdistribution(mu,sigma,p);
% Draw random samples from the distribution
myDataSample = myMixtureDistribution.random(800);
から始めrandn()
ます。
私は次のように答えを見つけました:(ありがとうございます)
Sigma=[0.5 0.05; 0.05 0.5];
z=mvnrnd([-3 0],Sigma,200);
x=mvnrnd([0 0],Sigma,200);
c=mvnrnd([3 0 ],Sigma,200);
v=mvnrnd([6 0 ],Sigma,200);
samples=[z; x; c; v];
plot(samples(:,1),samples(:,2),'*');