How do i select some columns that have maximum some values ?

2 visualizaciones (últimos 30 días)
Dear experiences
i have a data look like at the following in an excel file called (data.xls)
obs-name Var1 var2 var3 ..... varn
obs1 0.09 0.23 0.0 0.03
obs2 0.21 0.0 0.2 0.4
etc...
  • - i need to calculate the averages of variables values across all observation names ( every var column is independent from others).
  • - then eliminate all columns except (k) columns that have (k) largest average values ...
  • - for example if k=5 then result includes only observation names and 5 columns that involve largest 5 average values?
thanks for any participation ...

Respuesta aceptada

Andrei Bobrov
Andrei Bobrov el 3 de Abr. de 2017
T = readtable('data.xlsx');
dm = mean(T{:,2:end});
[~,ii] = sort(dm,'descend');
k = 2; % Let k = 2
Tout = T(:,[1,sort(ii(1:k)+1)]);

Más respuestas (0)

Categorías

Más información sobre Matrices and Arrays en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by