If you have a table called A. And this table has three columns. How can you replace column three with column two?

6 commentaires

Paolo
Paolo le 24 Mai 2018
Modifié(e) : Paolo le 24 Mai 2018
A = [1 2 3; 2 3 4; 3 5 6]
A =
1 2 3
2 3 4
3 5 6
A(:,3)=A(:,2)
A =
1 2 2
2 3 3
3 5 5
Eliah, I have noticed you have asked a few questions, however have never selected an answer as accepted. This would be helpful for the community as it makes helpful solutions stand out, which could then help other people who are facing the similar issues.
The above will not work exactly as written for a table() object. However you can use
A{:,3} = A{:,2};
Eliah Verbeemen
Eliah Verbeemen le 25 Mai 2018
I get the message Index exceeds matrix dimensions. Do you knwo why?
Walter Roberson
Walter Roberson le 25 Mai 2018
Are you sure that you are using a table() object and not a cell array or numeric array? And are you sure that your table object has three columns already?
Eliah Verbeemen
Eliah Verbeemen le 25 Mai 2018
Finnaly there is a working code. Probably re you right and was I working with a cell array. I have changed a lot of things untill it worked. Trail and error.
Walter Roberson
Walter Roberson le 25 Mai 2018
Please do not close questions that have an Answer.

Connectez-vous pour commenter.

 Réponse acceptée

Akira Agata
Akira Agata le 25 Mai 2018
Modifié(e) : Akira Agata le 25 Mai 2018

7 votes

If you have the latest version (R2018a), you can simply do it by movevars function, like:
yourTable = movevars(yourTable,2,'After',3);

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by