Reorder table variables / columns
古いコメントを表示
I've created a table from a large csv file using the readtable function. I want to reorder the variables / columns in this table.
For example.
My table's name is CUTable
It has a variable CUTable.Date which is the date the data was taken It is currently column 20 in the table. I want to make it column 2 and shift existing columns 2-19 to 3-20.
It seems there should be a very easy command to do this which I'm missing, but I can't seem to find it anywhere in the help or these forums. I could, but don't want to "brute force" it (e.g. create a new table, and one-by-one copy the variables from the exiting table to the new table in the order I want, then delete the old table) if avoidable.
How can I accomplish this?
採用された回答
その他の回答 (2 件)
Eric Sofen
2018 年 3 月 28 日
9 投票
In R2018a, check out the new movevars function for rearranging variables in tables. It's part of a set of new functions for manipulating table variables:
1 件のコメント
xingxingcui
2023 年 11 月 17 日
add topic link:
Ben Oeveren
2018 年 2 月 21 日
編集済み: Ben Oeveren
2018 年 2 月 21 日
Or you can use:
oldvariables = T.Properties.VariableNames;
newvariables = {'date','Title','Website'};
[~,LOCB] = ismember(oldvariables,newvariables);
newTable = T(:,LOCB);
1 件のコメント
Justin Elstrott
2021 年 1 月 13 日
Hi Ben,
I like this solution, but there's a typo in the third line. I believe it should read as:
oldvariables = T.Properties.VariableNames;
newvariables = {'date','Title','Website'};
[~,LOCB] = ismember(newvariables,oldvariables);
newTable = T(:,LOCB);
カテゴリ
ヘルプ センター および File Exchange で Data Type Identification についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!