T= struct2table(G);
c=1:length(T);
c=c';
i want to add c as new column of T!

 Réponse acceptée

Voss
Voss le 11 Juil 2023

0 votes

G = struct('ones',{1 1 1 1},'twos',{2 2 2 2}); % for example
T= struct2table(G);
c=1:height(T); % use height
c=c';
T.new_column = c
T = 4×3 table
ones twos new_column ____ ____ __________ 1 2 1 1 2 2 1 2 3 1 2 4

7 commentaires

shamal
shamal le 11 Juil 2023
Modifié(e) : shamal le 11 Juil 2023
thanks but it's possibile di move c in the first column?
Swapnil Tatiya
Swapnil Tatiya le 12 Juil 2023
Yes, it is possible to move c to the first column by doing the following:
%Using the previous code attached by Voss
G = struct('ones',{1 1 1 1},'twos',{2 2 2 2}); % for example
T= struct2table(G);
c=1:height(T); % use height
c=c';
T.new_column = c;
%Specify the order of the columns
order={'new_column','ones','twos'};
%Reorder them according to the order specified above
[~, ind] = ismember(order, T.Properties.VariableNames);
T_reordered = T(ind,order);
Hope this helps!
shamal
shamal le 12 Juil 2023
thanks
shamal
shamal le 12 Juil 2023
Modifié(e) : shamal le 12 Juil 2023
this is not cotrrect
the last element moved to first place
shamal
shamal le 12 Juil 2023
this is better :
T = [T(:,25) T(:,1) T(:,2) T(:,3) T(:,4) T(:,5) T(:,6) T(:,7) T(:,8) T(:,9) T(:,10) T(:,11) T(:,12) T(:,13) T(:,14) T(:,15) T(:,16) T(:,17) T(:,18) T(:,19) T(:,20) T(:,21) T(:,22) T(:,23) T(:,24)];
[Is it] possible [to] move c in the first column?
Yes, see below:
G = struct('ones',{1 1 1 1},'twos',{2 2 2 2}); % for example
T= struct2table(G);
c=1:height(T); % use height
c=c';
T.new_column = c;
T = T(:,[end 1:end-1])
T = 4×3 table
new_column ones twos __________ ____ ____ 1 1 2 2 1 2 3 1 2 4 1 2
shamal
shamal le 12 Juil 2023
thank

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Question posée :

le 11 Juil 2023

Commenté :

le 12 Juil 2023

Community Treasure Hunt

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

Start Hunting!

Translated by