GraphPad Prism  6 ユーザーズガイド

丸め

丸め

Previous topic Next topic No expanding text in this topic  

丸め

Previous topic Next topic JavaScript is required for expanding text JavaScript is required for the print function  

桁数が多い数値

 

7 桁超のデータを入力すると、7 桁 (実際には 2 進数なので、"約" 7 桁) のみが格納されるため、実際に入力したとおりには格納されません。たとえば、データ テーブルに 99.2492427 の値を入力した場合、99.249250 に切り上げられます。Prism では単一精度で数値が記憶されるため、約 7 桁の有効数字しか格納されません。これより多いと、Prism で四捨五入されます。小数点と 2 進数間で変換を行うと、丸めが予想どおりに行われないことがあります。

 

7 桁未満の数値

 

 

丸めの問題

丸めは次の桁が 5 でない限りは明快です。2.5 を 3 に切り上げるか、2 に切り下げるかが問題となります。両方とも同等に正確なので、この問題に対処するために多くの方法が提案されています。Wikipedia の丸めに関する記事では、多くの提案が挙げられています。

数値のコンピューターへの入力で複雑度が増します。コンピューターでは数値が 2 進数 として格納されるため、10 進数との変換が必要となります。多くの値、これについても丸めが必要となります。たとえば、0.055 の数値を入力し、Prism で小数点以下 2 桁までの値を表示するように指定するとします。次の 3 桁目の数値は 5 です。一般的な規則の 1 つでは、次の値が 5 である場合常に切り上げとなるため、表示される値は 0.06 と予想されます。しかし、コンピューターでは 0.055 という値は格納できません。代わりに、すべての値が 2 進数に変換されるため、この値は 0.0549999 として格納されます。この値を小数点以下 2 桁の位置で丸める場合、次の (3 桁目) の数値は 4 です。このため、Prism Windows版では切り下げが行われ、0.05 と表示されます。Prism Mac版では、切り上げるため、この場合0.06と表示します。

Prism での丸め処理方法

Prism ではデフォルトで、入力したすべての値を表示し、小数点以下の桁数もできるだけ含まれるようにします。より少ない桁数を表示するには、「数値表示形式」[Format Numbers]ダイアログを使用してください。分析結果も、同様に丸めることができます。Prismの丸めの方法は、不規則ように見えます。

Prism では、端数が 5 である場合の処理があまり規則的ではありません。たとえば、0.25 は 0.3 に切り上げられますが、0.45 は 0.4 に切り捨てられます。5 を切り上げるか切り捨てるかは任意のため、この場合両方とも正しい処理です。

Prism Windows では実数の表示に C 関数 sprintf() が使用されます。この関数の丸め処理については、Microsoft knowledgebase の記事を参照してください。Mac Xcode コンパイラで使用されている関数も同様のようですが、同じではありません。

Microsoft Excel は異なっている点に注意してください。このプログラムでは、計算がワークシート内で行われる場合と、マクロによって行われる場合とで異なる2 つの方法が使用されています。

 

ほとんどの場合、問題にならない

Prism データ テーブルでの表示は、そのテーブルを表示するときのみ問題になります。注意:

データ テーブルで表示される桁数を減らしても、Prism でのデータの分析またはグラフ作成には影響しません。常に、分析は入力したすべての桁数に基づいて行われます (Prism で格納可能である最大 7 桁まで)。
Prism ファイル (.PZF または .PZFX として) を保存するときは入力したすべての桁数 (最大 7 桁まで) が保存されるため、保存の際に値が切り捨てられることはありません。
Prism データ テーブルからデータをクリップボードにコピーするときは、テーブルで表示されている桁数のみでなく、入力した値がコピーされます。
データ テーブルを .TXT または .CSV ファイルとしてエクスポートするときは、テーブルで表示されている桁数のみでなく、入力した桁数がエクスポートされます。