Чи має значення зважений


19

Я оцінив надійну лінійну модель у Rвазі MM, використовуючи rlm()пакет MASS. `R`` не дає значення моделі для моделі, але я хотів би мати його, якщо це значуща кількість. Мені також цікаво дізнатися, чи є сенс мати значення R 2, яке зважує загальну та залишкову дисперсію так само, як спостереження зважувались у сильній регресії. Моє загальне думка полягає в тому, що, якщо для цілей регресії ми, по суті, з вагами надаємо деяким оцінкам менший вплив, оскільки вони певним чином переживають люди, то, можливо, для обчислення r 2 ми також мусимо дати їм ті ж оцінки менше впливу?R2R2r2

Я написав дві прості функції для і зваженого R 2 , вони нижче. Я також включив результати виконання цих функцій для моєї моделі, яка називається HI9. EDIT: Я знайшов веб-сторінку Adelle Coster з UNSW, яка дає формулу, яка включає вектор ваг при обчисленні обчислення обох і так само, як і я, і попросила її отримати більш офіційну довідку: http: //web.maths. unsw.edu.au/~adelle/Garvan/Assays/GoodnessOfFit.html (як і раніше шукає допомоги від Cross Valified про те, як інтерпретувати цей зважений р. 2 )R2R2R2SSeSStr2

#I used this function to calculate a basic r-squared from the robust linear model
r2 <- function(x){  
+ SSe <- sum((x$resid)^2);  
+ observed <- x$resid+x$fitted;  
+ SSt <- sum((observed-mean(observed))^2);  
+ value <- 1-SSe/SSt;  
+ return(value);  
+ }  
r2(HI9)  
[1] 0.2061147

#I used this function to calculate a weighted r-squared from the robust linear model
> r2ww <- function(x){
+ SSe <- sum((x$w*x$resid)^2); #the residual sum of squares is weighted
+ observed <- x$resid+x$fitted;
+ SSt <- sum((x$w*(observed-mean(observed)))^2); #the total sum of squares is weighted      
+ value <- 1-SSe/SSt;
+ return(value);
+ }
 > r2ww(HI9)
[1] 0.7716264

Дякуємо всім, хто витрачає час на відповіді на це. Прийміть мої вибачення, якщо вже є дуже хороші посилання на це, що я пропустив, або якщо мій код вище важко читати (я не хлопець).


покладіть ваги всередину lm () і візьміть звідти r-квадрат (навіщо знову винаходити колесо?)
user603

1
дякую за пораду про те, як зробити те, що я зробив більш ефективно. хтось може прокоментувати значення зваженого r-квадрата, який я описав / запропонував?
CraigMilligan

@ user603: Як би ви насправді вирішили поставити ваги всередині lm ()?
histelheim

Тільки для компліменту, найменше зважений квадрат, розміщений у R, є мінімізацією суми (w * e ^ 2), де e - залишковий. Тож для вас обчислювальний код, всю масу w слід приймати квадратним коренем.
Юаньхао Лай

Я хочу підкреслити, що ми не повинні брати середньозважене значення, принаймні я вважаю, що тому, що я написав програму, дається r-квадрат, близький до 1 з: класичний r-квадратний зважений r-квадрат, але НЕ із зваженим r- в квадраті , де середній зважуються теж, я вважаю -6 це нелогічне , навіть для мене, але я вважаю , що досвід , хоча
П'єр

Відповіді:


22

Наступна відповідь ґрунтується на: (1) моїй інтерпретації Віллетта та Зінгера (1988). Ще одна застережлива примітка щодо R-квадрата: Це використання в аналізі регресії найменш зважених квадратів. Американський статистик. 42 (3). pp236-238 та (2) припущення, що міцна лінійна регресія є по суті зваженою регресією найменших квадратів з вагами, оціненими ітераційним процесом.

Формула, яку я дала у запитанні для r2w, потребує невеликої поправки, щоб відповідати рівнянню 4 у Віллета та Зінгера (1988) для r2wls: для обчислення SSt також слід використовувати середньозважене значення:

the correction is SSt <- sum((x$w*observed-mean(x$w*observed))^2)].

У чому значення цього (виправленого) зваженого r-квадрата? Віллетт і Зінгер інтерпретують це як "коефіцієнт визначення в трансформованому [зваженому] наборі даних. Це міра частки варіації у зваженому Y, яку можна врахувати зваженим X, і це кількість, яка виводиться як R2 основними статистичними комп'ютерними пакетами, коли виконується регресія WLS ".

Чи це сенс як міра корисності придатності? Це залежить від того, як вона представлена ​​та інтерпретована. Віллетт і Зінгер застерігають, що він, як правило, трохи вище, ніж r-квадрат, отриманий у звичайних найменших регресіях квадратів, і високе значення заохочує помітне відображення ... але цей дисплей може бути оманливим, якщо його інтерпретувати у звичайному розумінні r -squared (як частка невиваженоговаріація пояснюється моделлю). Віллетт і Зінгер пропонують, що менш "оманливою" альтернативою є pseudoR2wls (їх рівняння 7), що еквівалентно моїй функції r2 в первісному запитанні. Взагалі, Віллетт і Зінгер також застерігають, що не варто покладатися на будь-який r2 (навіть на їх pseudor2wls) як на єдиний показник корисності. Незважаючи на ці застереження, загальна передумова стійкої регресії полягає в тому, що деякі випадки оцінюються як «не дуже хороші» і не враховують стільки, скільки підходить для моделі, і, можливо, буде добре відобразити це в частині процесу оцінки моделі. Описаний зважений r-квадрат може бути одним із хороших показників корисності придатності - до тих пір, поки правильна інтерпретація чітко дана у презентації, і вона не покладається на єдину оцінку корисності.


1
(+1). Дякуємо, що знайшли час, щоб поставити відповідь.
user603

1

@CraigMilligan. Не слід:

  • вага повинна знаходитися поза квадратних дужок
  • середньозважене значення обчислюється тим, для чого ми також можемо використовуватиsum(x$w*observed)/sum(x$w)weighted.mean(observed,x$w)

Щось на зразок цього:

r2ww <- function(x){
  SSe <- sum(x$w*(x$resid)^2)
  observed <- x$resid+x$fitted
  SSt <- sum(x$w*(observed-weighted.mean(observed,x$w))^2)
  value <- 1-SSe/SSt;
  return(value);
}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.