加重標準偏差を計算するにはどうすればよいですか?Excelで?


29

だから、私はそのようなパーセンテージのデータセットを持っています:

100   /   10000   = 1% (0.01)
2     /     5     = 40% (0.4)
4     /     3     = 133% (1.3) 
1000  /   2000    = 50% (0.5)

パーセンテージの標準偏差を見つけたいのですが、データ量に重みがあります。つまり、最初と最後のデータポイントが計算を支配する必要があります。

それ、どうやったら出来るの?そして、Excelでそれを行う簡単な方法はありますか?


(M-1)/ Mの式は正しいです。疑問がある場合は、すべての重みを1に設定して確認してください。分母に(N-1)を使用した標準偏差の不偏推定の古典的な式が得られます。大騒ぎする:異常は間違っているという意味ではありません。

1
(M-1)/ Mの式は正しくありません。1兆分の1の重みで100万ポイントを追加するとします。あなたはそれらの重みが何であるかに関係なく答えをまったく変えませんが、あなたの項は1になりますか?絶対違う!あなたがその気ならば、そしてあなたも、これは単に間違っていることを気に。M 1 / M 1(M1)/M(M1)/M1
レックスカー


私は疑問に思うなぜあなたはここに標準偏差をしたいですか?数字はしかありません!数が多すぎますか?特に、パーセンテージがより簡単に説明され理解される場合。4
確率論的

@probabilityislogicこれは、質問を短くするための簡単な例です。
ヤヘル

回答:


35

加重標準偏差は次のとおりです。

i=1Nwi(xix¯)2(M1)Mi=1Nwi,

どこで

Nは観測値の数です。

Mは、非ゼロの重みの数です。

wiは重みです

xiは観測値です。

x¯は加重平均です。

加重平均の式は次のとおりです。

x¯=i=1Nwixii=1Nwi.

適切な重みを使用して、目的の結果を取得します。あなたの場合、を使用することをお勧めします。Number of cases in segmentTotal number of cases

Excelでこれを行うには、まず加重平均を計算する必要があります。次に、別の列でを計算します。残りは非常に簡単でなければなりません。(xix¯)2


2
@Gilles、あなたは正しい。deps_stats、SD の分数は異常です。この式の引用はありますか、少なくともその用語を含める理由を説明できますか?(M1)/M
whuber

4
@Aaronの重みは、この質問で与えられた重みで例示されているように、常に単一になるように定義されているわけではありません!
whuber

2
(-1)項の正当化または参照が提供されていないため、この答えをダウンボットしています(そして明らかに、分散の推定を不偏にしないと確信しています)動機)。(M1)/M
whuber

1
追加された参照(権威はありませんが、参照)に照らして、私は下票を削除しています。ただし、計算では提案された重み付けは何の偏りのない推定を生成しないため、この答えを支持していませ(すべての重みが等しい場合を除く)。ここでの本当の難しさは、答えではなく質問のせいです。この「加重標準偏差」が推定しようとしているものが明確ではないということです。明確な推定値がないと、ファクターを導入して「バイアスを減らす」(またはその他の理由で)正当化できません。M 1 / M1(M1)/M
whuber

1
@Mikhail「異常」と「正しい」は互いにほとんど関係がないことは正しいです。ただし、異常であることは、エラーが発生した可能性のある指標の1つであるため、異常な結果は暗黙的にもう少し正当化を要求します。引数は無効です。すべての重みが等しい場合、式は実際に不偏推定量の式に減少しますが、不均等な重みが使用された場合、推定量が不偏のままであることを意味しません。私はあなたの結論が間違っていると断言しているわけではありませんが、これまでのところ正当な正当化は提供されていません。
whuber

18

数式は、Wikipediaを含むさまざまな場所で利用できます。

重要なのは、重みの意味に依存することです。特に、重みが頻度である場合(つまり、合計を合計することを避けようとしている場合)、重みが実際に各測定値の分散である場合、またはそれらが単なる外部値である場合、異なる答えが得られますデータに課します。

あなたの場合、表面的には重みは周波数のように見えますが、そうではありません。頻度からデータを生成しますが、データセットに3の45レコードと4の15レコードがあるという単純な問題ではありません。代わりに、最後の方法を使用する必要があります。(実際、これらはすべてゴミです- これらの数値を生成するプロセスのより洗練されたモデルを実際に使用する必要があります!あなたはどうやら正規分布の数値を吐き出すものを持っていないので、標準偏差でシステムを特徴付けますするのは正しいことではありません。)

いずれの場合でも、「信頼性」の重みを使用した分散の式(通常の方法で標準偏差を計算する)は、

wi(xix)2wiwi2wi

ここで、は加重平均です。x=wixi/wi

重みの推定値がありません。これは、信頼性に比例するようにしたいと考えています。20から0のスコアを取得すると、無限のパーセンテージが得られるため、ベルヌーイプロセスによって生成された分析であっても、パーセンテージをそのまま使用すると分析が難しくなります。SEMの逆数による重み付けは一般的であり、最適な場合もあります。おそらくベイズ推定値またはウィルソンスコア間隔を使用する必要があります


2
+1。重みのさまざまな意味についての議論は、このスレッドでずっと探していたものでした。これは、重み付き統計に関するこのサイトのすべての質問に対する重要な貢献です。(しかし、SDは正規性に基づいてモデルの外で使用することは間違っていると誤って示唆しているため、正規分布と標準偏差に関する括弧付きのコメントについて少し心配しています。)
whuber

@whuber-もちろん、救助の中心極限定理!しかし、OPが何をしていたかについては、その数値のセットを平均および標準偏差で特徴付けようとすることは、あまりお勧めできません。そして一般的に、多くの場合、標準偏差は最終的には誤解を招くようになります。たとえば、分布が正規分布(またはその近似値)以外の場合、標準偏差に依存すると、統計的に最も重要なのはテールの正確なテールの形状を把握できなくなります。テスト。
レックスカー

@RexKerr人々がそれにふさわしくない解釈をする場合、標準偏差を責めることはほとんどありません。しかし、正規性から離れて、有限分散を備えたはるかに広範な連続で対称的な単峰性分布を考えてみましょう(たとえば)。次に、分布の89〜100%が2つの標準偏差内にあります。多くの場合、これは知っておくと便利です(95%がほぼ中央にあるため、約7%を超えることはありません)。多くの一般的な分布では、対称性の低下の側面はあまり変化しません(たとえば、指数関数を見てください).... ctd
Glen_b -Reinstate Monica

CTD ... -私たちは、これらの仮定のいずれかを行わない場合や..常に尾と標準偏差について、少なくとも言う何かを行う通常のチェビシェフ限界があります
Glen_b -Reinstateモニカ

1
@ガブリエル-はい、申し訳ありませんが、私はずさんでした。(私は一見することでどちらがどれであるかを人々が知ることができると思います。)私は説明を修正しました。
レックスカー

5
=SQRT(SUM(G7:G16*(H7:H16-(SUMPRODUCT(G7:G16,H7:H16)/SUM(G7:G16)))^2)/
     ((COUNTIFS(G7:G16,"<>0")-1)/COUNTIFS(G7:G16,"<>0")*SUM(G7:G16)))

Gは重み、列Hは値


Ctrl + Shift + Enterを使用することは私にとって落とし穴でしたが、これは別の方法で機能するようです。
-philipkd

1

:我々は確率のような重みを扱う場合は、次のように我々は彼らを構築 -データボリュームを。vi

pi=viivi,
vi

次に、明らかに加重平均は あり、分散は σ 2=ΣIPIXI - μ2

μ^=ipixi,
σ^2=ipi(xiμ^)2

0
Option Explicit

Function wsdv(vals As Range, wates As Range)
Dim i, xV, xW, y As Integer
Dim wi, xi, WgtAvg, N
Dim sumProd, SUMwi

    sumProd = 0
    SUMwi = 0
    N = vals.Count  ' number of values to determine W Standard Deviation
    xV = vals.Column  ' Column number of first value element
    xW = wates.Column  ' Column number of first weight element
    y = vals.Row - 1  ' Row number of the values and weights

    WgtAvg = WorksheetFunction.SumProduct(vals, wates) / WorksheetFunction.Sum(wates)

    For i = 1 To N  ' step through the elements, calculating the sum of values and the sumproduct
        wi = ActiveSheet.Cells(i + y, xW).Value  ' (i+y, xW) is the cell containing the weight element
        SUMwi = SUMwi + wi
        xi = ActiveSheet.Cells(i + y, xV).Value  ' (i+y, xV) is the cell containing the value element
        sumProd = sumProd + wi * (xi - WgtAvg) ^ 2
    Next i

    wsdv = (sumProd / SUMwi * N / (N - 1)) ^ (1 / 2)  ' output of weighted standard deviation

End Function

2
サイト@ uswer71015へようこそ。これは単なるコードのようです。コードがどのように機能し、質問にどのように答えるかについてのテキスト/説明を追加できますか?
GUNG -復活モニカ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.