Filter löschen
Filter löschen

How to modify array in modifying subarray reference ?

3 Ansichten (letzte 30 Tage)
Clément T
Clément T am 28 Apr. 2020
Bearbeitet: Ameer Hamza am 28 Apr. 2020
Hello,
I would like to be able to modify an array in modifying a subarray. For example, I have these 3 arrays :
a = [1; 2];
b = [3 5; 4 6];
c = [a b];
When I modify a column of b,
b(:,1) = [6 8];
I would like that c changes too and becomes : [1 6 5; 2 8 6]. Whereas currently c remains [1 3 5; 2 4 6]...
How can I do that ?

Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 28 Apr. 2020
Bearbeitet: Ameer Hamza am 28 Apr. 2020
There is no easy way to do such a thing in MATLAB. The closest you can get is to define your own class and add event listeners to react whenever there is a change in the value of b. That will require a fair share of understanding of MATLAB OOP. Read Siddharth's answer here: https://www.mathworks.com/matlabcentral/answers/808-how-to-react-on-a-change-of-variable-from-workspace to get a general idea. Also, read the following resources

Weitere Antworten (1)

Saurav Roy
Saurav Roy am 28 Apr. 2020
Hi....
I am not sure I understood your question properly but I wrote something as per my initial understanding to get your results.
a = [1; 2];
b = [3 5; 4 6];
b(:,1) = [6 8];
c = [a b];
disp(c);
  1 Kommentar
Clément T
Clément T am 28 Apr. 2020
Thank you for your answer.
After I create a and b, I'll define c as :
c = [a b]
I was asking if there is a way to change the second column of c without doing :
c(:,2) = [6 8]
but in doing :
b(:,1) = [6 8]
In other words, is Matlab able to understand that b is in c ? And so if modifying b modifies c ?

Melden Sie sich an, um zu kommentieren.

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by