Arrays 在Matlab中按频率列出属性值

Arrays 在Matlab中按频率列出属性值,arrays,matlab,Arrays,Matlab,我有一个简单的问题 让我给你看一个例子 如果我有一个矩阵,如下所示 200 , 2; 100 , 4; 300 , 6 (第一列是值,第二列是这些值的计数) 我想像下面这样排列这些数据 200,200, 100,100, 100, 100, 300,300,300,300,300,300 如何在MATLAB中实现这一点?正如所指出的,这可以使用repelem实现。以你为例: input = [200 2; 100 4; 300 6]; v = input(:,1); % y

我有一个简单的问题

让我给你看一个例子

如果我有一个矩阵,如下所示

200  ,   2;
100  ,   4;
300  ,   6
(第一列是值,第二列是这些值的计数)

我想像下面这样排列这些数据

200,200, 100,100, 100, 100, 300,300,300,300,300,300
如何在MATLAB中实现这一点?

正如所指出的,这可以使用
repelem
实现。以你为例:

input = [200 2; 100 4; 300 6];
v = input(:,1); % your data
n = input(:,2); % these are your counts

result = repelem(v,n)

result = result'; % transpose result if preferred

如果您有以下矩阵:

A = [   200  ,   2;
        100  ,   4;
        300  ,   6;]
您可以这样做:

B = repelem(A(:,1),A(:,2))';
输出应为:

B =

   200   200   100   100   100   100   300   300   300   300   300   300
你试过了吗?