Transfer from Decimal to Percentage?

15 views (last 30 days)
Hi guys,
I have a Matrix A =
[1 2 3
4 5 6
7 8 9]
How I can get Matrix B =
[100% 200% 300%
400% 500% 600%
700% 800% 900%]?
Sprintf might work but I don't know how to use it. Thanks in advance.
  2 Comments
Walter Roberson
Walter Roberson on 25 Jun 2012
You cannot get it as a numeric matrix, as numeric matrices cannot contain '%' characters.
Xiao Tang
Xiao Tang on 25 Jun 2012
Then how can I transfer it to string or cell array? As long as there follows '%'.
I was wondering if there is a function to do this...

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 25 Jun 2012
thisfmt = [ repmat(' %.3f%%', 1, size(A,2)) '\n'];
B = sprintf( thisfmt, A.' );
B(1) = '[';
B(end) = ']';
This creates the output as a single string.
  8 Comments
Xiao Tang
Xiao Tang on 27 Jun 2012
Thanks Tom! That's perfect!
geopap
geopap on 14 Sep 2016
Tom this works great!! Thanks

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!