Як обчислити зважене стандартне відхилення? В 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? Абсолютно не! Якщо ви переймаєтесь тим, що ( M - 1 ) / M 1 , то ви також переймаєтесь, що це просто неправильно. (M1)/M(M1)/M1
Рекс Керр

Найвищий голос є правильним. Перевірте itl.nist.gov/div898/software/dataplot/refman2/ch2/weightsd.pdf
Bo Wang,

Цікаво, чому ви хочете тут стандартного відхилення? у вас всього номери! Як це занадто багато цифр? Особливо, коли відсотки легше пояснити та зрозуміти. 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 ) / M для "зменшення упередженості" (або з будь-якої іншої причини). 1(M1)/M
whuber

1
@Mikhail Ви вірні, що "незвичайні" та "правильні" мало спільного між собою. Однак незвичні результати по суті вимагають трохи більше виправдань, оскільки незвичність - один із показників того, що помилка може бути допущена. Ваш аргумент недійсний: хоча формула дійсно зводиться до одиничного для неупередженого оцінювача, коли всі ваги рівні, це не означає, що оцінювач залишається неупередженим, коли використовуються неоднакові ваги. Я не стверджую, що ваш висновок є неправильним, але лише тому, що поки що не було запропоновано вагомих обґрунтування.
whuber

18

Формули доступні в різних місцях, включаючи Вікіпедію .

Головне - помітити, що це залежить від того, що означають ваги . Зокрема, ви отримаєте різні відповіді, якщо ваги - це частоти (тобто ви просто намагаєтесь уникати складання всієї суми), якщо ваги насправді є дисперсією кожного вимірювання або якщо вони є лише деякими зовнішніми значеннями накладати на ваші дані.

У вашому випадку це поверхово виглядає так, що ваги є частотами, але їх немає . Ви генеруєте свої дані з частот, але це непросте питання про наявність у вашому наборі даних 45 записів із 3 та 15 записів із 4. Натомість потрібно використовувати останній метод. (Насправді все це сміття - вам справді потрібно використовувати більш досконалу модель процесу, що генерує ці числа! У вас, мабуть, немає чогось, що б виплюнуло нормально розподілені числа, тому характеризували систему зі стандартним відхиленням це не правильно робити.)

У будь-якому випадку, формула для дисперсії (з якої ви обчислюєте стандартне відхилення нормальним способом) з вагами "надійності"

wi(xix)2wiwi2wi

x=wixi/wi

У вас немає оцінки ваг, яку я припускаю, що ви хочете вважати пропорційною надійності. Якщо взяти відсотки так, як ви збираєтеся, зробити аналіз складно, навіть якщо вони породжені процесом Бернуллі, тому що якщо ви отримаєте оцінку 20 і 0, у вас є нескінченний відсоток. Зважування за зворотною стороною SEM - це звичайна, а часом і оптимальна річ. Можливо, вам слід скористатися байєсівською оцінкою або балом Вільсона .


2
+1. Обговорення різних значень ваг було те, що я шукав у цій темі весь час. Це важливий внесок у всі питання цього веб-сайту щодо зваженої статистики. (Мене трохи турбують
думки щодо думок

@whuber - Ну, центральна гранична теорема для порятунку, звичайно! Але те, що робила ОП, намагання охарактеризувати цей набір чисел із середнім та стандартним відхиленням видається надзвичайно недоцільним. І взагалі, для багатьох застосувань стандартне відхилення закінчує виманювати одне до помилкового розуміння. Наприклад, якщо розподіл є чимось, але нормальним (або хорошим наближенням до нього), покладаючись на стандартне відхилення, ви дасте неправильне уявлення про форму хвостів, коли саме статистичні хвости ви, мабуть, найбільше хвилюєте в статистиці тестування.
Рекс Керр

@RexKerr Ми навряд чи можемо звинувачувати стандартне відхилення, якщо люди розміщують на ньому інтерпретації, які є незаслуженими. Але давайте відійдемо від нормальності і розглянемо набагато ширший клас безперервних, симетричних одномодальних розподілів з кінцевою дисперсією (наприклад). Тоді між 89 і 100 відсотками розподілу лежить в межах двох стандартних відхилень. Це часто досить корисно знати (а 95% лежить майже в середині, тому це ніколи не перевищує приблизно 7%); При багатьох поширених розподілах аспект симетрії, що падає, не сильно змінюється (наприклад, подивіться, наприклад, на експоненцію) ....
ctd

ctd ... - або якщо ми не робимо жодного з цих припущень, завжди є звичайні межі Чебишева, які хоча б щось говорять про хвости та стандартне відхилення ..
Glen_b -Встановити Моніку

1
@Gabriel - Так, вибачте, мені було неохайно. (Я думаю, що люди можуть сказати, що це таке, поглянувши.) Я виправив свій опис.
Рекс Керр

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

Якщо ми ставимось до ваг як до ймовірностей, то будуємо їх так:

pi=viivi,
де vi - обсяг даних.

Далі, очевидно, середньозважене значення

мк^=ipiхi,
і дисперсія:
σ^2=ipi(хi-мк^)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 - Відновіть Моніку
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.