スプレッドシートのASINH関数の使い方|双曲線逆正弦

スポンサーリンク

スプレッドシートで「双曲線逆正弦(逆ハイパボリックサイン)」を計算したいとき、どの関数を使えばいいか迷っていませんか?

SINH関数の逆を求めたいけど、書き方がわからないですよね。

そんなときに使うのがASINH関数です。=ASINH(値) と書くだけで、双曲線逆正弦をかんたんに求められます。

この記事では基本の書き方から、SINH関数との逆関数の関係、LN関数を使った検算方法、データ変換への応用まで紹介します。

スプレッドシートのASINH関数とは?

ASINH関数(読み方: エーサインエイチ、またはアークハイパボリックサイン関数)は、指定した値の双曲線逆正弦を返す関数です。名前の「A」は「Arc(逆)」を意味します。

たとえば =ASINH(1) と入力すると「0.88137…」が返ります。これが1の双曲線逆正弦の値です。

ASINH関数はSINH関数の逆関数にあたります。SINH(0.88137) が約1を返すので、ASINH(1) は約0.88137を返すわけです。

ASINH関数にできることをまとめると、次のとおりです。

  • SINH関数の結果から元の値を逆算する
  • LN関数と同じ計算結果を式で確認できる
  • 負の値を含むデータの対数変換的な処理に使う
  • 物理学・工学で双曲線関数の逆問題を解く

NOTE

ASINH関数はGoogleスプレッドシートの全バージョンで使えます。Excelとも完全に互換性があるので、ファイルのやり取りでも安心です。

ASINH関数の書き方(構文と引数)

基本構文

=ASINH(値)

カッコの中に、双曲線逆正弦を求めたい数値を指定します。

引数の説明

引数必須/任意説明
必須双曲線逆正弦を求めたい実数値

引数は1つだけです。正の数・負の数・0のどれでも受け付けます。SINH関数とは違い、入力の範囲に制限がないのが特徴ですよ。

TIP

ASIN関数(逆正弦)は引数が-1から1の範囲に制限されますが、ASINH関数にはそのような制限がありません。どんな実数でも渡せます。

ASINH関数の基本的な使い方

代表的な値でASINH関数の動きを確認してみましょう。

正の値を渡す

=ASINH(1)

結果は「0.88137…」です。

もう少し大きい値も見てみます。

=ASINH(10)

結果は「2.99822…」です。入力が大きくなっても、結果はゆるやかに増えていくのが特徴ですね。

0を渡す

=ASINH(0)

結果は「0」です。ASINH(0)=0 は覚えておくと便利です。

負の値を渡す

=ASINH(-1)

結果は「-0.88137…」です。ASINH(1)の符号を反転した値になっています。

これはASINH関数が「奇関数」だからです。ASINH(-x) = -ASINH(x) が常に成り立ちます。

まとめると

代表的な入力値と結果を一覧にまとめます。

数式結果備考
=ASINH(0)0原点は0
=ASINH(1)0.88137…基本値
=ASINH(2)1.44363…増加はゆるやか
=ASINH(-1)-0.88137…奇関数(符号反転)
=ASINH(-2)-1.44363…奇関数(符号反転)
=ASINH(10)2.99822…大きい値でもゆるやかに増加

SINH関数は入力が大きくなると結果が急増しますが、ASINH関数はその逆で、ゆるやかに増えていきます。

セル参照を使う

もちろんセル参照も使えます。A1セルに数値が入っていれば、次のように書きます。

=ASINH(A1)

A列に複数の値を入れて、B列にASINH関数を並べれば一括計算もできますよ。

SINH関数との逆関数の関係

ASINH関数はSINH関数の逆関数です。つまり、次の関係が成り立ちます。

ASINH(SINH(x)) = x
SINH(ASINH(x)) = x

実際にスプレッドシートで確認してみましょう。

数式結果
=SINH(2)3.62686…
=ASINH(3.62686)2.00000…
=ASINH(SINH(2))2

SINH(2)の結果をASINHに渡すと、元の「2」に戻ります。逆関数なので当然ですが、検算に便利ですよ。

ASINH関数の数学的な仕組み

定義式とLN関数での検算

ASINH関数は数学的に次のように定義されています。

ASINH(x) = LN(x + SQRT(x^2 + 1))

ここでLNは自然対数(ネイピア数eを底とする対数)です。スプレッドシートではLN関数とSQRT関数を使って同じ計算ができます。

=LN(A1 + SQRT(A1^2 + 1))

この式とASINH(A1)は同じ結果を返します。A1に「1」を入れて確認してみましょう。

数式結果
=ASINH(1)0.88137…
=LN(1+SQRT(1^2+1))0.88137…

どちらも同じ値ですね。ASINH関数の結果が正しいか不安なときは、LN関数を使った式で検算できます。

TIP

LN関数は自然対数を返す関数です。SQRT関数は平方根を返す関数です。どちらもスプレッドシートの標準関数として使えますよ。

なぜLN関数と関係があるのか

SINH関数の定義式 SINH(x) = (e^x - e^(-x)) / 2 を逆に解くと、自然対数の式が出てきます。双曲線関数はもともと指数関数(e^x)をベースに作られているため、その逆関数が対数関数になるのは自然なことです。

実務での活用例

負の値を含むデータの対数変換

ASINH関数が実務で役立つのは、データの「対数変換的な処理」です。

通常の対数関数(LN関数やLOG関数)は、正の値しか扱えません。0や負の値を渡すとエラーになります。

数式結果
=LN(100)4.60517…
=LN(0)#NUM! エラー
=LN(-50)#NUM! エラー

一方、ASINH関数はすべての実数を受け付けます。

数式結果
=ASINH(100)5.29834…
=ASINH(0)0
=ASINH(-50)-4.60527…

しかも、大きい値に対してはLN関数と似た挙動をします。ASINH(x) は x が大きいほど LN(2x) に近づくという性質があります。

この特徴を使えば、売上データの増減(マイナスを含む)をグラフで見やすくしたいときにASINH関数が活躍します。極端に大きな値を圧縮しつつ、負の値やゼロもエラーなく変換できますよ。

SINH値から元の値を逆算する

SINH関数で計算した結果から、元の入力値を求めたい場面があります。

たとえば、カテナリー曲線の弧の長さがわかっていて、元のxの値を逆算したいケースです。

弧の長さ = a × SINH(x / a)

この式から x を求めるには、ASINH関数を使います。

x = a × ASINH(弧の長さ / a)

パラメータa=10として、弧の長さが11.75201のときの x を求めてみます。

=10*ASINH(11.75201/10)

結果は「10.00000…」です。SINH関数の記事で紹介した例の逆算ができていますね。

よくあるエラーと対処法

ASINH関数でよくあるトラブルをまとめます。

症状原因対処法
#VALUE! エラー引数に文字列を渡した数値またはセル参照を指定する
ASIN関数と結果が違う関数を間違えているASINは逆正弦(三角関数)、ASINHは双曲線逆正弦。目的に合った方を使う
SINH関数と組み合わせて元に戻らない丸め誤差小数点以下の桁数が多い場合はROUND関数で丸める

文字列を渡したとき

=ASINH("abc")

結果は #VALUE! エラーです。引数には必ず数値を渡してください。セル参照の場合は、参照先が数値であることを確認しましょう。

ASIN関数と間違えたとき

ASIN関数とASINH関数は名前が似ていますが、まったく別の関数です。

=ASIN(0.5)   → 0.52359...(逆正弦。引数は-1〜1のみ)
=ASINH(0.5)  → 0.48121...(双曲線逆正弦。引数の制限なし)

ASIN関数は引数が-1から1の範囲外だとエラーになります。範囲外の値を渡したいときはASINH関数を使ってください。

似た関数との違い・使い分け

関数動作引数の範囲用途
ASINH双曲線逆正弦を返す制限なしSINH逆算・データ変換
ACOSH双曲線逆余弦を返す1以上COSH逆算
ATANH双曲線逆正接を返す-1〜1(端点除く)TANH逆算
ASIN逆正弦を返す-1〜1三角関数の角度を求める
SINH双曲線正弦を返す制限なしカテナリー曲線・物理計算
LN自然対数を返す正の値のみ対数変換・成長率計算

ASINH・ACOSH・ATANHは双曲線関数の逆関数の仲間です。引数の範囲がそれぞれ違う点に注意してください。

ASINHだけが引数に制限がないので、最も使いやすい双曲線逆関数といえます。

まとめ

ASINH関数は、指定した値の双曲線逆正弦(逆ハイパボリックサイン)を返す関数です。

ポイントを整理します。

  • 構文は =ASINH(値) で、引数は任意の実数値
  • SINH関数の逆関数で、ASINH(SINH(x))=x が成り立つ
  • 定義式は LN(x + SQRT(x^2+1)) で、LN関数で検算できる
  • 負の値やゼロを含むデータの対数変換的な処理に便利
  • ASIN関数(三角関数)とは別の関数なので間違えないように注意

まずは =ASINH(1) で0.88137が返ることを確認してみてください。

タイトルとURLをコピーしました