How to multiply 8*8 data sets elementwise?

I want multiply with 1.02 each and every element so new table will be 8*8. How one can use for loop?

 采纳的回答

If you're just multiplying by the scaler of 1.02 then
Qxxepoch1{:,:}*1.02
will do what you want without a loop

5 个评论

Why it is showing that brace indexing is not supported for variables of this type. ?
Can you please help me with it?
Use {} if your data is inside a cell array to reach into the cell to extract the data (like cracking an eggshell to reach the egg inside.) Use () if your data is in a matrix to extract individual elements (like picking an M&M from a bowl of candy.)
M = [1 2 3; 4 5 6; 7 8 9];
C = {M};
2*M(3, 1) % 2*7 = 14
ans = 14
2*C{1} % 2 times the matrix M
ans = 3×3
2 4 6 8 10 12 14 16 18
% 2 times the element in location (3, 1) in the matrix stored in the first cell of C
2*C{1}(3, 1)
ans = 14
Just to expand on the information above - your original data was stored in a table. You can't apply the times (*) operator directly on the table, so writing
Qxxepoch1{:,:}
extracts all the data in the table into a matrix. Holding the data in a matrix allows you to apply the times operator to multiply the elements by 1.02. However, as mentioned above, to access the data in a matrix you use the normal indexing with parenthesis () - using brace {} indexing on a matrix will cause the error you experienced. It can be confusing - you just need to be aware of what your data is stored in, and use the appropriate indexing for the task.
Thank you , it was beneficial .

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

产品

版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by