How to round a result to 1 decimal place.

73 ビュー (過去 30 日間)
Amy Wong
Amy Wong 2017 年 12 月 6 日
編集済み: Adam 2017 年 12 月 6 日
I have a data of 4096x64 and would like to round it to 1 decimal place. When I use DATA = round(DATA,1), the error 'Too many input arguments' appear. Is there any other way to do this?

回答 (1 件)

Adam
Adam 2017 年 12 月 6 日
Which version of Matlab do you have?
round( data * 10 ) / 10;
is a fairly standard alternative.
  4 件のコメント
Amy Wong
Amy Wong 2017 年 12 月 6 日
編集済み: Amy Wong 2017 年 12 月 6 日
Like if my value is 0.33333, I want to get 0.3. But the result is 0.3000. Is there a way to remove the 0 at the back?
Adam
Adam 2017 年 12 月 6 日
編集済み: Adam 2017 年 12 月 6 日
Not every decimal number is precisely representable in a double (after all, there are an infinite number of floating point numbers and clearly there are not an infinite number of bit-representations to represent these).
Why do you need it to be precisely 0.3?
Note: round( 0.3333, 1 ) in later Matlab also gives an answer with a lot of trailing 0s that isn't 100% precise to 1dp.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by