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!

 채택된 답변

madhan ravi
madhan ravi 2019년 4월 22일

0 개 추천

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

댓글 수: 3

Jenny Hall
Jenny Hall 2020년 10월 22일
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!
Stephen23
Stephen23 2020년 10월 22일
편집: Stephen23 2020년 10월 22일
x(:,2) = (((6.64e-34)*(9.5e+9))./((9.274e-24)*(x(:,1)/10000)))
% ^^ you might want array division here
Jenny Hall
Jenny Hall 2020년 10월 22일
Thank you! This worked a treat.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

JULIEN BARBAUD
JULIEN BARBAUD 2019년 4월 22일
편집: JULIEN BARBAUD 2019년 4월 22일

0 개 추천

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에서 Matrix Indexing에 대해 자세히 알아보기

제품

릴리스

R2019a

태그

질문:

2019년 4월 22일

댓글:

2020년 10월 22일

Community Treasure Hunt

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

Start Hunting!

Translated by