有効数字

提供: miniwiki
2018/8/19/ (日) 17:35時点におけるAdmin (トーク | 投稿記録)による版 (1版 をインポートしました)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
移動先:案内検索

n 桁の有効数字(ゆうこうすうじ)で丸めるとは、端数処理での一形式である。

n 桁の有効数字で丸めるという作業は、単に n 桁に丸めるというだけではなく、異なるスケールの数字を統合して取り扱う点でより重要な技法である。

浮動小数表示というのは、コンピュータ上での有効数字表現に丸める典型例であるが、2進数である点がポイントである。

有効数字の桁数(有効桁数)

0ではない数字に挟まれた0は有効である。例えば、

  • 60.8 は有効数字3桁である。
  • 39008 は有効数字5桁である。

0ではない数字より前に0がある場合、その0は有効ではない。例えば、

  • 0.093827 は有効数字5桁である。
  • 0.0008 は有効数字1桁である。
  • 0.012 は有効数字2桁である。

小数点より右にある0は有効である。例えば、

  • 35.00 は有効数字4桁である
  • 8 000.000000 は有効数字10桁である。

小数点がない数の最後にある0については、有効であるとも有効でないとも受け取れ、曖昧である。例えば、1 000 の有効数字は1桁から4桁のどれとでも受け取れる。このように、整数(小数点がない数)の末尾で続いている0を有効数字と見るかどうかは、その文脈によってまちまちである。

この曖昧さは数の後に小数点を置くことで解決できる。例えば、"1 000." と記せば、有効数字4桁であることを意味する[1]

また、有効数字が何桁であるかを明示するためには、科学的記数法を用いることもできる。

  • 1 × 103 や 1e3 は有効数字が1桁であることが明示される。
  • 1.000 × 103 は4桁であることが明示される。

なお、有効と見なさない数字というのは非常に重要である。例えば、'0.005' に用いられている0は有効数字とは見なさないが、その桁を表すためには依然として不可欠なものである。

丸めの手法

  • 0ではない数字で最も左にあるものから桁数を数え始める。例えば、1 000 では '1' から、0.02 では '2' から数え始める。
  • n 桁の数字を保つ。足りない桁は0で埋める。
  • 適切な手法で丸める。例えば 0.039 を有効数字1桁に丸める場合、結果は 0.04 となる。丸め方の境界線にある場合には、いくつか異なった方法がある。詳しくは、端数処理を参照せよ。

2桁の有効数字に丸める場合、

  • 12 300 は 12 000 となる。
  • 0.00123 は 0.0012 となる。
  • 0.1 は 0.10 となる(右に続く0は2桁に丸めたことを示している)。
  • 0.02084 は 0.021 となる。
  • 0.0125 は、四捨五入では 0.013、偶数への丸めでは 0.012 である(数値処理の分野で用いられ、5を丸める際、丸めた先の数字を偶数にすることで切り上げ・切り捨ての向きを均等にし、バイアスがかからないようにしている)。

n 桁の有効数字に丸める際の問題点は、n 桁目の数字が必ずしも明確とは限らない点である。これは、整数部にある0(小数点より左にある0)について発生する問題である。上記の最初の例では、12 300 を丸めれば 12 000 になるのだが、丸めた後の 12 000 だけを見れば、有効数字は2桁から5桁までのいずれにも受け取れるため、何桁目の数字を丸めたのか不明確となる。

丸めのレベルを明示する際は科学的記数法を用いれば、あいまいさを減らすことができる。例えば、先の例で 1.2 × 104 とすれば、有効桁数は2桁であると明示されるのである。

丸めのレベルは、例えば、"20 000 to 2 s.f."(significant-figures の略語)のように有効桁数が2桁であると特別に明示することも可能である。さほど一般的でない方法ではあるが、最後の有効数字に下線を引く("20000" など)という方法もある。

とはいえ、いかなる場合にも最良なアプローチは、不確かさと明確さをわけて記述することである。例えば、 20 000 ± 1% という書き方をすれば、有効数字のルールを適用せずとも明瞭な記載とできる。

記述において注意すべき点

精度を過剰にしないこと

もし、短距離走者が100mを11.71秒で走ったら、平均速度はいくらになるだろうか? 計算機で距離を時間で割ると、8.539 709 65 m/s という値が出てくる。

精度を表すための最もストレートな方法は、その正確さと不確かさを分けて記すことである。例えば、不確かさの範囲を ±0.085 m/s と定め 8.540±0.085 m/s または同じ意味で 8.540(85) m/s と記すのである。これは、不確かさそのものが重要で明確になっている場合に適している。この場合、有効数字のルールで言われるよりも多くの桁数を記したほうが安全でより望ましい。

もし答えの精度が重要でないならば、正確にわかっていない桁も続けて 8.5397 m/s のように記すのが安全である。

しかしながら、有効数字のルールを厳格に適用すれば、8.539 709 65 m/s という表記は 10 nm/s の桁まで速度が分かっていることを意味する。このような表記は、測定精度に比べて不適切な書き方である。この場合、有効数字3桁 (8.54 m/s) で結果を報告すれば、速度は 8.535 から 8.544 m/s の間であるのだとわかってもらえる。2桁 (8.5 m/s) で報告してしまうと、測定精度に対して丸め誤差が無視できないほど大きくなってしまう。

読みやすさ

数値は、読みやすいように丸められることが良くある。『18.148% と 35.922% を比べよ』というよりも、『18% と 36% を比べよ』というほうが、相手に通じやすいものである。

同様に、予算を眺める際に、

部署A: $185 000
部署B: $ 45 000
部署C: $ 67 000

となっているほうが、次のように書かれているよりも理解するにも比べるにも簡単である。

部署A: $184 982
部署B: $ 44 689
部署C: $ 67 422

曖昧さを減らすには、一番近い桁数の単位にしてデータを記すこともよく行われる。

収益(単位: 千ドル):
 部署A: 185
 部署B:  45
 部署C:  67

測定値のみが有効数字の対象である

有効数字に注意して計算する際には、重要なポイントがある。有効桁数は、あくまでも測定値の中で一番有効桁数が少ないものに合わせるという点である。

以下のように厳密に求まっていたり定義されている値については、有効桁数を少なくとも気にすることはない。あくまでも、測定の不確かさが存在する測定値の有効桁数を生かすのが、有効数字の概念(不確かさの桁の明示)だからである。

  • 中途半端な値になり得ない、個数のような整数値(例えば、バッグの中のオレンジの数)
  • 法的・制度的に定義された換算係数(例えば、計量単位の換算係数)
    • 例えば、1トロイオンスは、日本では、0.031 1035 kg と定義されている(英米では、0.031 103 4768 kg と定義)。
    • 例えば、地球扁平率は、1/298.257 222 101、地球の赤道半径は 6 378 137 m(正確に)、と定義されている。
  • 任意に定義されている定数(例えば、1ミリメートルは0.001メートル)
  • 線形操作(例えば、3倍や1/2倍)
  • 数学定数(例えば、円周率 πネイピア数 e

なお、上述のような定数とは違い、アボガドロ定数のような物理定数には有効桁数がある。なぜなら、これらは物理的に測定された値から求められた数値だからであり、有効数字のルールが適用される対象となる。

記述においてさほど重要でない面

  • 第一に、計量学統計学の専門家でない方々は、むしろ有効数字の有用性を過剰に考えすぎで、高校や大学の化学テキストでは研究室での実状に比べて過剰に受け止められている[1][2][3][4]

応用分野の科学者は、不確かさを表現するのに一般的に 1.234±0.055 または同じ意味で 1.234 (55) という表現を用いる。ポイントは、不確かさが別個の数値 (0.055) として表される一方で、公称値 (1.234) も分けて表現されているところにある。これら2つのことを正確に分離して表現するのは、公称値と不確かさを有効数字のルールに頼って1つの数字に盛り込もうとするよりも繊細な取り扱い方である。

この記事の冒頭に述べたように、有効数字というのは丸めの一種として受け止められており、最終的な答えを丸めたものが、不確かさに比べて支配的であってこそ意味がある。一方で、不確定さに比べて丸めた結果が支配的にならない場合には、これは重大な問題となる。とはいえ、測量学のように実験的な研究においては、丸め誤差が支配的になるのはよほどひどい実験方法であるから、それを避けて丸め誤差を減らすのは容易である。それでもなお丸め誤差が支配的であったとしても、それを示すために 1.24(½) または同じ意味で 1.24(⁄) と明示するのがよい。

  • 第二に、有効数字というのは significance arithmetic(有効数字の計算ルール)での根本をなす手法なのであるが、significance arithmetic の記事やその他で議論されるように[5]、有効数字のルールだけを用いて不確かさを表現する確固たる手法は一般には存在しない。
  • コンピュータ科学数値解析においては、guard digits を用いるのが良い手である。つまり、何段階かに分けて計算をする際に、N桁の有効数字に毎回丸めるのではなく、もう1桁かもう少し多く桁を残して丸めて次の計算に移るのである。これは有効数字とは相容れない概念ではあるが、丸め誤差を毎回積み重ねてしまう危険は減らせる。計算途中の有効桁数をM桁とした場合、M-N guard digits と表現する。詳細はActonの記述[6]をご覧いただきたい。
  • 科学者が不確定な量をいかに正確に表そうとするかの良い例が、NISTの抄録に見られるような物理定数である[3]。これらは、有効数字のルールに頼らず、公称値と不確かさを分離して記している。
  • 不確かさをいかに適切に表現するかという手順や、これらの手順を用いる論拠については、参考文献をご覧いただきたい[4][5]

関連項目

参考文献

  1. 1.0 1.1 Myers, R. Thomas; Oldham, Keith B.; Tocci, Salvatore. [2000]. “2”, Chemistry (Textbook) (English), Austin, Texas: Holt Rinehart Winston. ISBN 0-03-052002-9. Retrieved on July 31, 2007. 
  2. Bursten, Bruce Edward; Brown, Theodore; LeMay, Harold Eugene (1991). Chemistry: the central science. Englewood Cliffs (New Jersey): Prentice Hall. ISBN 0-13-126202-5. 
  3. 3.0 3.1 NIST compendium of physical constants
  4. 4.0 4.1 The NIST Reference on Constants, Units and Uncertainty: Uncertainty of Measurement Results
  5. 5.0 5.1 Measurements and Uncertainties
  6. Acton, Forman [1997]. Numerical Methods That Work (Textbook) (English), The Mathematical Association of America. 

外部リンク