Filter löschen
Filter löschen

sampling from a matrix

17 Ansichten (letzte 30 Tage)
Mohamad
Mohamad am 20 Dez. 2013
Kommentiert: Mohamad am 21 Dez. 2013
Hello I am going to sample some columns in a matrix and return the columns that are not selected during the sampling. could you please help me?

Akzeptierte Antwort

José-Luis
José-Luis am 20 Dez. 2013
bla = rand(10);
%Columns you sample:
my_cols = [1 5 7];
%Extract them:
sample = bla(:,my_cols);
nCols = 1:size(bla,2);
no_sample = nCols(~ismember(nCols,my_cols));
no_sample =bla(:,no_sample);
  1 Kommentar
Mohamad
Mohamad am 21 Dez. 2013
Dear Jose Thank you very much.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

dpb
dpb am 20 Dez. 2013
Bearbeitet: dpb am 20 Dez. 2013
Sample how? If use randperm, say, as
icol=randperm(size(x,2),N);
to select N random columns from the array x to get the "nonsampled" columns you could instead simply use
inot=randperm(size(x,2),size(x,2)-N);
which is simply picking a random set of the obverse size to not sample--same thing in the end.
Or, if you are using the sampled column values first and then wanting the ones that weren't used both then first select as in the former and the other columns are simply
inot=setdiff([1:size(x,2)],icol);
  1 Kommentar
Mohamad
Mohamad am 21 Dez. 2013
hi dear dpd Thank you very much for the informative comments.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by