フィルターのクリア

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

3 ビュー (過去 30 日間)
ahmed obaid
ahmed obaid 2017 年 4 月 3 日
編集済み: ahmed obaid 2017 年 4 月 4 日
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 ...

採用された回答

Andrei Bobrov
Andrei Bobrov 2017 年 4 月 3 日
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)]);
  2 件のコメント
ahmed obaid
ahmed obaid 2017 年 4 月 3 日
thank you a lot, very smart solution
ahmed obaid
ahmed obaid 2017 年 4 月 4 日
編集済み: ahmed obaid 2017 年 4 月 4 日

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrices and Arrays についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by