Doing calculation across columns

Hi there. I have a 4 column by 500 row matrix. How would I add a fifth column that calculates , where x is the corresponding value in the second column across the same row.
Thanks!

 采纳的回答

D=zeros(500,5);
D=matrix;
D(:,5)=exp((-(matrix(:,2)-75)/2).^2)

3 个评论

I am currently trying to do something similar, in order to carry out a calculation of every value in one column. This code I have written is as follows:
x(:,2) = (((6.64e-34)*(9.5e+9))/((9.274e-24)*(x(:,1)/10000)))
However this only seems to calculate a value for the final row in the column, whilst all of the values come out as 0. The column contains 1024 rows.
Any help would be much appreciated!
x(:,2) = (((6.64e-34)*(9.5e+9))./((9.274e-24)*(x(:,1)/10000)))
% ^^ you might want array division here
Thank you! This worked a treat.

请先登录,再进行评论。

更多回答(1 个)

I think that if you call your input matrix A, and the final result B, then this:
f=@(x) exp( (-(x-75)/2).^2 )
B=[A f(A(:,2))];
should do the trick
EDIT: oops, madhan was quicker

类别

在 帮助中心 和 File Exchange 中查找有关 Logical 的更多信息

产品

版本

R2019a

标签

Community Treasure Hunt

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

Start Hunting!

Translated by