MATLAB Answers

Display values with fprintf

158 views (last 30 days)
Andrea Tersigni
Andrea Tersigni on 24 Feb 2017
Commented: Massimo Zanetti on 25 Feb 2017
I would like to display "The return is ... and the standard deviation is ..."? Returns are of the form 6.0033e-04 while standard deviations 0.0207 What should I write in formatSpec?
if true
Mean_return = mean(...);
Standard = (...)
formatSpec = 'Return= %.. SD= %.. \n';
fprintf(formatSpec,Mean_return,Standard)
end
  8 Comments
Massimo Zanetti
Massimo Zanetti on 25 Feb 2017
Facing reality, (in my opinion) we should come to a conclusion which is user-independent. We suggest people to (1) ask questions the right way, (2) accept the answers, etc. Realistically, we cannot believe they are all going to do that.. I think this is why some high-reputation contributors have moderating tools such as delete questions, accept answers, etc. If properly used, these tools allows us to mitigate for incorrect and unpolite utilization of this forum.
It is clear the guy here didn't get the point, so let's clear-up the history and go on.
Max

Sign in to comment.

Answers (2)

Massimo Zanetti
Massimo Zanetti on 24 Feb 2017
Edited: Massimo Zanetti on 24 Feb 2017
Here it is
ret = 0.000065003;
std = 0.0207;
fprintf('The return is %.4e and the standard deviation is %.4f \n',ret,std)
to get
The return is 6.5003e-05 and the standard deviation is 0.0207
read the fprintf help page to get printing options based on the number formats.
  2 Comments
Massimo Zanetti
Massimo Zanetti on 24 Feb 2017
It means that your variable(s) me and/or st are structures instead of numerical values. Check it.

Sign in to comment.


Jan
Jan on 24 Feb 2017
Edited: Jan on 24 Feb 2017
formatSpec = 'The return is %g and the standard deviation is %g'
or to specify the decimals:
formatSpec = 'The return is %.4g and the standard deviation is %.4g'

Community Treasure Hunt

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

Start Hunting!

Translated by