changing values in a certain column of a matrix
44 ビュー (過去 30 日間)
古いコメントを表示
I have a large matrix and in the fifth column I want to replace every value of 990 with 30.375, how could I do this easily? I found many similar questions but not exactly the same one and I tried to adapt the solutions to my situation but it hasn't worked yet..
3 件のコメント
DGM
2025 年 10 月 2 日 4:59
See also:
For example, assigning an entire row or column using a vector of equal length:
A = magic(4) % we have a 4x4 matrix
A(3,:) = [2 4 6 8] % assign values to a row
A(:,3) = [2 4 6 8] % assign values to a column
For another example, use linear indexing to assign a value to the nth element:
A(6) = 100 % ordering is column-major
採用された回答
Cedric
2014 年 5 月 4 日
編集済み: Cedric
2014 年 5 月 4 日
First, you build a logical index of all values equal to 990 in column 5:
lId = A(:,5) == 990 ;
Then you use it to index relevant elements of A (in column 5), that you set to 30.375:
A(lId,5) = 30.375 ;
Let me know if you need more information.
5 件のコメント
Cedric
2014 年 5 月 4 日
Thank you Image Analyst! Yes, I could have warned, but I always thought that I would be able to come back "within a few days", and I lost track of time!
Dogiparthi Santhosh Gupta
2021 年 4 月 4 日
Is the same logic applicable on a table with single column.
My problem is 'I have to replace the values of 2,3,4 in a single column of a table to 1' I tried with your logic but getting an error. Kindly suggest the perfect logic by anyone.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Resizing and Reshaping Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!