ゼロのログを取ることを回避するために、xにどのくらいの量を追加する必要がありますか?


57

データをそのまま分析しました。次に、すべての変数のログを取得した後、分析を確認します。多くの変数には多くのゼロが含まれています。したがって、ゼロの対数をとらないように少量を追加します。

これまでのところ、論理的に根拠なく10 ^ -10を追加しました。これは、任意に選択した数量の影響を最小限に抑えるために、ごく少量を追加することが望ましいと考えたからです。ただし、一部の変数にはほとんどゼロが含まれているため、ほとんどの場合、-23.02に記録されます。私の変数の範囲の範囲は1.33-8819.21で、ゼロの頻度も劇的に変化します。したがって、「少量」という私の個人的な選択は、変数に非常に異なる影響を与えます。すべての変数の分散の大部分はこの任意の「少量」に由来するため、10 ^ -10が完全に受け入れられない選択であることは明らかです。

これを行うためのより正しい方法は何でしょうか。

たぶん、各変数の個々の分布から量を導き出す方が良いでしょうか?この「少量」の大きさに関するガイドラインはありますか?

私の分析は主に、各変数と年齢/性別をIVとする単純なcoxモデルです。変数はさまざまな血中脂質の濃度であり、多くの場合、かなりの変動係数があります。

編集:変数のゼロ以外の最小値を追加すると、私のデータにとって実用的と思われます。しかし、おそらく一般的な解決策はありますか?

編集2:ゼロは単に検出限界以下の濃度を示すので、多分それらを(検出限界)/ 2に設定するのが適切でしょうか?


4
なぜ観測/変数のを取っているのですか?log

2
変数にを追加すると、元のスケールでゼロだった変数は、ログスケールでゼロになります。1
MånsT

5
応答変数または説明変数のみにこの問題がありますか?後者のみ場合、サンプルサイズの考慮一つの選択肢に応じて追加することができる追加の所与の分析物の濃度を表すダミー変数を検出限界以下でした。これは自由度を吸収しますが、データに任意のアドホックな選択を課さないという利点があります。また、検出閾値付近で非線形性または不連続性が明らかになる可能性があります。
枢機

2
@Procrastinator対数スケールは、平衡定数とギブズエネルギーの間の指数関数的な関係のため、濃度に対して自然です。実際、「連続」化学では、濃度はいくぶん非現実的です。

2
別の方法は、たとえば、データのキューブルートを取得することです。ログに到達することはできませんが、再スケーリングなしでゼロを保持します。
jbowman

回答:


26

ゼロは単に検出限界以下の濃度を示すため、(検出限界)/ 2に設定するのが適切かもしれません

ログが(頻繁に)意味を持ち、0が発生する可能性があると思い浮かぶのは、2回目の編集を行ったときの集中であると入力しただけです。あなたが言うように、測定された濃度の場合、0は「その低濃度を測定できなかった」ことを意味します。

サイドノート:LODではなくLOQを意味しますか?

0を LOQに設定するのが良いかどうかは、次の条件に依存します。12

  • 観点からあなたcがどこでも0とLOQの間、それが意味をなすしていることを発現する「推測」です。 ただし、対応するキャリブレーション関数について考えてみ ましょう。左側では、キャリブレーション関数はLOQの下でc = 0を生成します。右側では、0の代わりにが使用されます。12LOQ

    ここに画像の説明を入力してくださいここに画像の説明を入力してください
    12LOQ

  • ただし、元の測定値が利用可能な場合は、より正確な推測が可能です。結局のところ、LOQは通常、相対誤差が10%であることを意味します。その下では、測定にはまだ情報が含まれていますが、相対誤差は非常に大きくなります。
    ここに画像の説明を入力してください
    (青:LOD、赤:LOQ)

  • 別の方法は、これらの測定値を除外することです。それも合理的
    です。例えば、検量線を考えてください。実際には、シグモイド形状をよく観察します。低cの場合、信号≈定数、中間線形動作、そして検出器飽和。 ここに画像の説明を入力してください
    そのような状況では、他のプロセスの上下が結果に大きく影響するため、明らかに線形範囲にある濃度に関する記述に制限することができます。
    データがそのように選択されたこととその理由を必ず説明してください。


編集:賢明または許容できるものは、もちろん問題に依存します。ここで、分析に影響を与えないデータのごく一部について話していただければ幸いです。

たぶん、迅速でダーティなチェックは、データを除外して、または除外せずにデータ分析を実行し(または提案する処理)、何かが大幅に変化するかどうかを確認することです。

変更が表示される場合は、もちろん問題があります。ただし、分析化学の観点から、問題の主な原因はデータの処理方法にあるのではなく、根本的な問題は分析方法(またはその動作範囲)が適切ではなかったことです手元の問題。もちろん、より良い統計的アプローチで1日を節約できるゾーンもありますが、最終的には、「ゴミを入れてゴミを捨てる」という近似が通常、より派手な方法にも当てはまります。

トピックの引用:


1
一番下の引用(+1)が大好きです。
モニカを

32

化学物質濃度データには多くの場合ゼロがありますが、これらはゼロ値を表すものではありません:これらは、非検出(分析が存在しない可能性の高い測定値)と「未定量化」の両方をさまざまに(そして紛らわしく)表すコードです値(測定値は検体を検出しましたが、信頼できる数値を生成できませんでした)。ここでは、これらの「ND」を漠然と呼びましょう。

通常、「検出限界」、「定量限界」、または(より正直なところ)「報告限界」としてさまざまに知られるNDに関連付けられた限界があります。これは、実験室数値を提供しないことを選択するためです理由)。NDについて実際に知っていることは、真の値が関連する制限よりも小さい可能性が高いということです。これは、ほとんど(ただし完全ではない)左打ち切りの形式です。(まあ、それは本当に真実でもありません:それは便利なフィクションです。これらの制限は、ほとんどの場合、貧弱からひどい統計特性を持つキャリブレーションを介して決定されます。で(たとえば)切り取られた対数正規分布の右尾部と、すべてのNDを表す「スパイク」があるように見える濃度データのセットを見ています。未満少しが、ラボのデータがありますしようと、それがあなたを伝えるためにまたはまたはそのような何か。)1.3301.330.50.1

このようなデータセットをどのように要約および評価するのが最善かについて、過去30年ほどにわたって広範な研究が行われてきました。Dennis Helselは、これに関する本、Nondetects and Data Analysis(Wiley、2005)を出版し、コースを教え、R彼が好むテクニックのいくつかに基づいたパッケージをリリースしました。彼のウェブサイトは包括的です。

このフィールドには、エラーと誤解がたくさんあります。ヘルセルはこれについて率直です。彼の本の第1章の最初のページには、

...現在の環境研究で最も一般的に使用されている方法である検出限界の半分の置換は、打ち切りデータを解釈するための合理的な方法ではありません。

じゃあ何をすればいいの? オプションには、この良いアドバイスを無視すること、Helselの本のいくつかの方法を適用すること、およびいくつかの代替方法を使用することが含まれます。そうです、この本は包括的ではなく、有効な代替案が存在します。データセット内のすべての値に定数を追加する(「開始する」)のは1つです。しかし、考慮してください:

  • このレシピは測定単位に依存するため、追加することは開始するのに適した場所ではありませんデシリットルあたりマイクログラムを 追加しても、リッターあたりミリモルを追加した場合と同じ結果にはなりません。111

  • すべての値を開始した後で、NDのコレクションを表す最小値でスパイクが残ります。あなたの希望は、その総質量がと開始値の間の対数正規分布の質量にほぼ等しいという意味で、このスパイクが定量化されたデータと一致することです。0

    開始値を決定するための優れたツールは、対数正規確率プロットです。NDを除き、データはほぼ線形である必要があります。

  • NDのコレクションは、いわゆる「デルタ対数正規」分布で記述することもできます。これは、点質量と対数正規分布の混合です。

次のシミュレーション値のヒストグラムで明らかなように、打ち切り分布とデルタ分布は同じではありません。 デルタアプローチは、回帰の説明変数に最も役立ちます。NDを示す「ダミー」変数を作成し、検出値の対数を取る(または必要に応じて変換する)ことができ、NDの置換値を心配することはできません。

ヒストグラム

これらのヒストグラムでは、最低値の約20%がゼ​​ロに置き換えられています。比較のために、それらはすべて同じ1000シミュレートされた基礎対数正規値(左上)に基づいています。デルタ分布は、200個の値をランダムにゼロ置き換えることにより作成されました。打ち切り分布は、200個の最小値をゼロで置き換えることにより作成されました。「現実的な」分布は、私の経験に準拠しています。つまり、レポートの制限は実際には変化します(実験室によって示されていない場合でも)。いずれかの方向)、レポートの制限よりも小さいすべてのシミュレーション値をゼロに置き換えました。

確率プロットの有用性を示し、その解釈を説明するために、次の図は、前のデータの対数に関連する通常の確率プロットを示しています。

確率プロット

左上には、すべてのデータが表示されます(打ち切りまたは置換の前)。これは、理想的な対角線によく適合します(極端なテールで多少の偏差が予想されます)。これは、後続のすべてのプロットで達成することを目指しているものです(ただし、NDがあるため、この理想を避けられません)。右上は、開始値1を使用した打ち切りデータセットの確率プロットです。すべてのND(0でプロットされているため、であるため、ひどい適合ですlog(1+0)=0)プロットが低すぎる。左下は、開始値が120の打ち切りデータセットの確率プロットであり、これは一般的なレポート制限に近い値です。左下のフィットは今ではまともです-これらの値がすべてフィットしたラインの近く、しかし右側に来ることを願っていますが、上部の曲率は、120を追加すると、分布の形状。右下は、デルタ対数正規データに何が起こるかを示しています。上尾にはよくフィットしますが、レポートの制限付近(プロットの中央)にいくつかの顕著な曲率があります。

最後に、より現実的なシナリオをいくつか見てみましょう。

確率プロット2

左上は、ゼロがレポート制限の半分に設定された打ち切りデータセットを示しています。かなりぴったりです。右上には、より現実的なデータセットがあります(ランダムに変化するレポート制限付き)。開始値1は役に立たないが、左下で120の開始値(レポート制限の上限に近い)では、適合は非常に良好です。興味深いことに、ポイントがNDから定量化された値まで上昇する際の中央付近の曲率は、(これらのデータがこのような混合から生成されていなくても)デルタ対数正規分布を連想させます。右下には、現実的なデータのNDが(通常の)レポート制限の半分に置き換えられたときに得られる確率プロットがあります。 これが最適です。 途中でいくつかのデルタ対数正規のような動作を示しますが。

その場合、NDの代わりにさまざまな定数が使用されるため、確率プロットを使用して分布を調べる必要があります。名目上の平均のレポート制限の 半分で検索を開始し、そこから上下に変更します。右下のように見えるプロットを選択します。おおよそ、定量化された値の対角線の直線、低プラトーへの素早いドロップオフ、および対角線の延長に(わずかに)合致する値のプラトーです。ただし、Helselのアドバイス(文献で強く支持されています)に従って、実際の統計的要約については、NDを定数で置き換える方法を避けてください。 回帰の場合、ダミー変数を追加してNDを示すことを検討してください。一部のグラフィック表示では、確率プロットの演習で検出された値によるNDの一定の置換が適切に機能します。他のグラフィック表示では、実際のレポート制限を表すことが重要な場合があるため、代わりにNDをレポート制限で置き換えます。柔軟性が必要です!


1
非常に良い答えです!同意します。あなたがデータを見て、それが「いつものように、」形質転換されています前に、完全に有用なデータセットが...あったことを実現するとき、私は気持ちに慣れてる
cbeleitesはモニカサポート

1
さまざまな制限:LOD(検出の制限->定性的回答)とLOQ(定量の制限、定量測定)の両方を計算するためのいくつかの異なるアプローチが存在します。1つのラボでは通常、これらの計算方法を変更しません(同じ分析方法の場合)。ただし、これらの値は計算が行われるたびに再計算されます。メソッドが毎日稼働中にキャリブレーションを必要とする場合、毎日、わずかに異なる制限があります。
cbeleitesはモニカをサポートしています

1
低い数値を提供しないための制限と法的理由:法的理由は、生信号、対応する濃度、信頼区間/測定の判断(たとえば、「LOQ未満」)などの詳細な情報を(追加)提供することを禁止しません。また、検量線を分析ラボに依頼することもできます。それは余分な仕事なので、あなたはそのためにお金を払わなければならないと思っていますが、私はこれが可能になると期待しています。安価な妥協案は、すべての生データを提供し、データ分析をあなたに任せることです。彼らはあなたが分析/ chemometrician /統計学者、化学者なら知っている場合、それは/ ...助けるかもしれない
cbeleitesはモニカサポート

1
私の仕事では、データが丸められているため、ゼロに遭遇することがよくあります。このような場合には、これらのグループ化されたデータは、参照stats.stackexchange.com/questions/26950/...
ステファンローラン

2
これと関連する主題に専念する「ケモメトリックス」というフィールド全体があり、「検出の限界」とは何かだけを扱った本全体が書かれています(そして書かれ続けています)。20以上の異なる定義に遭遇しました!変数の再表現の問題(その対数を取るなど)も、データ分析とデータ探索の重要な問題です。多くの本の大部分(特に探索的データ分析に関する本)は、その問題に焦点を当てています。
whuber

5

@三浦

Stata ブログで Bill Gouldがこの記事に出会いました(彼は実際にStataを設立したと思います)。これはあなたの分析に役立つと思います。記事の終わり近くで、ログでは-4.61、-9.21、-16.12、およびであるため、0.01、0.0001、0.0000001、0などのゼロに近い任意の数字の使用に注意します。この状況では、それらはまったくarbitrary意的ではありません。彼は、上記の数値が実際に互いに近いことを認識するので、ポアソン回帰の使用を勧めます。


3

変数のゼロをに設定できますはこれらのケースを他のケースと区別するのに十分な大きさです(たとえば、 6または10)。ithmean(xi)n×stddev(xi)n

このような人為的な設定は分析に影響するため、解釈に注意する必要があり、場合によってはアーティファクトを避けるためにこれらのケースを破棄する必要があることに注意してください。

検出限界を使用することも合理的な考えです。


3

回帰モデルでゼロのログを処理する方法を明確にするために、最良の解決策と実際に人々が犯すよくある間違いを説明する教育論文を書きました。また、この問題に対処するための新しいソリューションも考案しました。

ここをクリックして、論文を見つけることができます:https : //ssrn.com/abstract=3444996

まず、なぜログ変換を使用するのか疑問に思うべきだと思います。回帰モデルでは、ログとログの関係により、弾力性が識別されます。実際、もし、次にの弾性に対応するの。ログは、理論モデルを線形化することもできます。また、不均一分散を減らすためにも使用できます。ただし、実際には、ログで取得された変数に正でない値が含まれることがよくあります。log(y)=βlog(x)+εβyx

しばしば提案される解決策は、なるように、すべての観測値正の定数cを追加することです。ただし、線形回帰とは異なり、対数線形回帰は従属変数の線形変換に対してロバストではありません。これは、対数関数の非線形性によるものです。ログ変換は、低い値を拡張し、高い値を絞り込みます。したがって、定数を追加すると、ゼロとデータ内の他の観測値との(線形)関係が歪められます。定数によって生成されるバイアスの大きさは、実際にはデータ内の観測範囲に依存します。そのため、可能な限り小さい定数を追加することは、必ずしも最善の最悪の解決策ではありません。YY+c>0

この記事では、非常に小さな定数を追加すると実際に最高のバイアスが提供される例を示します。バイアスの表現を導き出します。

実際、ポアソン擬似最尤法(PPML)は、この問題の良い解決策と見なすことができます。次のプロセスを考慮する必要があります。

yi=aiexp(α+xiβ)E(ai|xi)=1

このプロセスは、いくつかの機能が動機となっています。まず、半ログモデルとして同じ解釈を提供します。第二に、このデータ生成プロセスは、従属変数のゼロ値の論理的合理化を提供します。この状況は、乗算誤差項がゼロに等しい場合に発生する可能性があります。第三に、PPMLを使用してこのモデルを推定しても、場合に計算上の困難は発生しません。と仮定すると、ます。この瞬間の二次誤差を最小化して、次の1次条件を導きます。βaiyi=0E(ai|xi)=1E(yiexp(α+xiβ)|xi)=0

i=1N(yiexp(α+xiβ))xi=0

これらの条件は、場合でも定義され。これらの1次条件は数値的にポアソンモデルの条件と同等であるため、標準の統計ソフトウェアで推定できます。yi=0

最後に、実装も簡単で、不偏推定量を提供する新しいソリューションを提案します。単に推定する必要があります:β

log(yi+exp(α+xiβ))=xiβ+ηi

この推定量は偏りがなく、標準統計ソフトウェアを使用してGMMで簡単に推定できることを示します。たとえば、Stataで1行のコードを実行するだけで推定できます。

この記事がお役に立てば幸いです。フィードバックをお寄せください。

クリストフ・ベレゴとルイ・ダニエル・パプ、クレスト-エコール・ポリテクニック-ENSAE

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.