In MATLAB R2016b, there is a way to sort the variable names (column names) using the sort function. Note that the following example will only work as expected on tables where all variables have variable names defined:
% Load sample data available in MATLAB and create a table
load patients
T = table(Weight, Height, Smoker, Gender);
To exclude the first variable name (column name) from the sorting:
sortedNames = sort(T.Properties.VariableNames(2:end));
T2 = [T(:,1) T(:,sortedNames)]
To include all variable names in the sorting:
T3 = T(:,sort(T.Properties.VariableNames))
