How to round numbers using the decimals as a probability?
4 ビュー (過去 30 日間)
古いコメントを表示
Hi, I am trying to create code where the decimals are used as probability of how the value is rounded. For example, I have array of the following values: [ 1.04 ; 0.96 ; 0.22 ; 1.56 ] and for the first element there is a 4% chance the value gets rounded up to 2 and a 96% chance it gets rounded to 1. For the second element there is a 96% probability that it gets rounded up to 1 and a 4% it gets rounded to 0.
1 件のコメント
Walter Roberson
2023 年 4 月 13 日
What is the rule? Round down 96% of the time for values with even row numbers, and round down 96% of the time for values with odd row numbers? If so then should that be modified if there are multiple columns ?
採用された回答
David Hill
2023 年 4 月 13 日
A=10*rand(1,10)
B=floor(A)+((A-floor(A))>rand(1,10))
3 件のコメント
Walter Roberson
2023 年 4 月 13 日
No, each entry in A should be rounded individually.
B=floor(A)+((A-floor(A))>rand(size(A)))
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!