Perform this operation on a scalar/vector or matrix

2 Ansichten (letzte 30 Tage)
atan
atan am 26 Mär. 2019
Kommentiert: atan am 27 Mär. 2019
I have a code like this
The function takes z as argument. z can be a scalar or vector or matrix
IF it is a vector, I want the operation stated to be performed on every element of a vector, if its a matrix I want the operation to be performed on every element of a matrix and if its a scalar on the scalar
It is not working. See below
1) If I give z as scalar 0. I get 0.5 which is correct
2) If I give z as 0.5, I get 0.6225 which is correct
3) I give as z as [0;0;0.5], I expect the answer to be 0.5 0.5 0.6225 but it doesn't work
function g = sigmoid(z)
%SIGMOID Compute sigmoid function
% g = SIGMOID(z) computes the sigmoid of z.
% You need to return the following variables correctly
g = zeros(size(z));
g = (1/(1+exp(-z)));

Akzeptierte Antwort

Stephan
Stephan am 26 Mär. 2019
Bearbeitet: Stephan am 26 Mär. 2019
g = (1./(1+exp(-z)));
% ^
% |______ perform elementwise
  2 Kommentare
madhan ravi
madhan ravi am 26 Mär. 2019
Also
g = zeros(...) % line is unnecessary
atan
atan am 27 Mär. 2019
Thanks !
This works:
g = (1./(1+exp(-z)));
I know that "." does the magic to perfoirm the element wise operation. I'm still unsure on where exactly one should insert that "."
Thanks !

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by