how to generate random data
21 次查看(过去 30 天)
显示 更早的评论
number of data = 1000; dimension=20; and save in mat format.
5 个评论
the cyclist
2016-1-7
How about this, fred? Spend the time to compose a complete, coherent description of what it is that you want as input and output from your program. This isn't twitter; feel free to use more than 140 characters.
采纳的回答
Walter Roberson
2016-1-7
data = rand(1000,4);
If the 4 class labels are to be random and equal probability but not necessarily exactly equal number, then
label = randi(4, 1000, 1);
If the 4 class labels must be equal occurrence then
population = [1 * ones(250,1); 2 * ones(250,1); 3 * ones(250,1); 4 * ones(250,1)];
label = population(randperm(1000));
If you wanted a precise distribution that was not equal numbers, then you could adjust the counts in the population matrix.
Your data is 4 dimensional. You cannot plot 4 spatial dimensions. You can encode the 4th dimension as color, but you need to be careful; see http://blogs.mathworks.com/steve/2014/10/20/a-new-colormap-for-matlab-part-2-troubles-with-rainbows/
pointsize = 20;
scatter3(data(:,1), data(:,2), data(:,3), pointsize, data(:,4)); %4th dimension used as color
colormap(parula); %needs R2014b or later
And to add the labels:
labstr = cellstr( num2str(label(:)) );
text( data(:,1), data(:,2), data(:,3), labstr );
this is going to be rather crowded...
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Descriptive Statistics and Visualization 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!