ข้อผิดพลาดของคอมพิวเตอร์มาตรฐานในการประมาณค่าเฉลี่ยถ่วงน้ำหนัก


16

สมมติว่าและจะวาดแต่ละIIDจากการกระจายบางกับอิสระจากx_iw_iเป็นบวกอย่างเคร่งครัด คุณสังเกตเห็นw_iทั้งหมดแต่ไม่ใช่x_i ; มากกว่าที่คุณสังเกต\ sum_i x_i w_i ฉันสนใจที่จะประมาณ\ operatorname {E} \ left [x \ right]จากข้อมูลนี้ เห็นได้ชัดว่าตัวประมาณ \ bar {x} = \ frac {\ sum_i w_i x_i} {\ sum_i w_i} นั้นไม่เอนเอียงและสามารถคำนวณได้เมื่อมีข้อมูลอยู่ในมือx 1 , x 2 , . . , x nw1,w2,,wnx1,x2,...,xnx ฉันW ฉันW ฉันx ฉันΣ ฉันx ฉันW ฉัน E [ x ] ˉ x = Σ ฉันW ฉันx ฉันwixiwiwixiixiwiE[x]

x¯=iwixiiwi

ฉันจะคำนวณข้อผิดพลาดมาตรฐานของตัวประมาณนี้ได้อย่างไร สำหรับกรณีย่อยที่xiใช้เฉพาะค่า 0 และ 1 ฉันลองใช้

sex¯(1x¯)iwi2iwi,
โดยทั่วไปไม่สนใจความแปรปรวนในwiแต่พบว่าสิ่งนี้ทำงานได้ไม่ดีสำหรับขนาดตัวอย่างที่เล็กกว่าประมาณ 250 (และอาจขึ้นอยู่กับความแปรปรวนของwi ) ดูเหมือนว่าฉันอาจไม่มีข้อมูลเพียงพอที่จะ คำนวณข้อผิดพลาดมาตรฐาน 'ดีกว่า'

คำตอบ:


17

ฉันวิ่งเข้าไปในปัญหาเดียวกันเมื่อเร็ว ๆ นี้ ต่อไปนี้เป็นสิ่งที่ฉันพบ:

ซึ่งแตกต่างจากตัวอย่างแบบสุ่มอย่างง่ายที่มีน้ำหนักเท่ากันไม่มีคำจำกัดความที่เป็นที่ยอมรับอย่างกว้างขวางเกี่ยวกับข้อผิดพลาดมาตรฐานของค่าเฉลี่ยถ่วงน้ำหนัก วันนี้มันจะตรงไปข้างหน้าเพื่อทำ bootstrap และรับการกระจายเชิงประจักษ์ของค่าเฉลี่ยและขึ้นอยู่กับที่ประมาณการข้อผิดพลาดมาตรฐาน

ถ้าหากใครต้องการใช้สูตรในการประมาณค่านี้

อ้างอิงหลักคือกระดาษนี้โดยโดนัลด์เอฟ Gatz และลูเทอร์สมิ ธ ที่ประมาณ 3 ตามสูตรจะถูกเมื่อเทียบกับผลการบูต การประมาณค่าผลลัพธ์ bootstrap ที่ดีที่สุดมาจาก Cochran (1977):

(SEMw)2=n(n1)(Pi)2[(PiXiP¯X¯w)22X¯w(PiP¯)(PiXiP¯X¯w)+X¯w2(PiP¯)2]

ต่อไปนี้เป็นรหัส R ที่สอดคล้องกันที่มาจากกระทู้ R รายการนี้

weighted.var.se <- function(x, w, na.rm=FALSE)
#  Computes the variance of a weighted mean following Cochran 1977 definition
{
  if (na.rm) { w <- w[i <- !is.na(x)]; x <- x[i] }
  n = length(w)
  xWbar = weighted.mean(x,w,na.rm=na.rm)
  wbar = mean(w)
  out = n/((n-1)*sum(w)^2)*(sum((w*x-wbar*xWbar)^2)-2*xWbar*sum((w-wbar)*(w*x-wbar*xWbar))+xWbar^2*sum((w-wbar)^2))
  return(out)
}

หวังว่านี่จะช่วยได้!


PiXiiPiXi

win

@ Ming-ChihKao สูตร cochran นี้น่าสนใจ แต่ถ้าคุณสร้างช่วงความมั่นใจออกเมื่อข้อมูลไม่ปกติไม่มีการตีความที่สอดคล้องกันถูกต้องหรือไม่ คุณจะจัดการค่าเฉลี่ยถ่วงน้ำหนักที่ไม่ปกติหมายความว่าช่วงความมั่นใจอย่างไร quantile ถ่วงน้ำหนัก?
3022875

ฉันคิดว่ามีข้อผิดพลาดกับฟังก์ชั่น หากคุณแทนw=rep(1, length(x))แล้วเป็นเรื่องเกี่ยวกับweighted.var.se(rnorm(50), rep(1, 50)) 0.014ผมคิดว่าสูตรที่ขาดหายไปsum(w^2)ในเศษตั้งแต่เมื่อความแปรปรวนคือP=1 1/(n*(n-1)) * sum((x-xbar)^2)ฉันไม่สามารถตรวจสอบบทความที่อ้างถึงได้เนื่องจากอยู่ด้านหลัง paywall แต่ฉันคิดว่าการแก้ไขนั้น ผิดปกติพอวิกิพีเดีย (แตกต่างกัน) วิธีการแก้ปัญหาจะกลายเป็นคนเลวเมื่อน้ำหนักเท่ากันทั้งหมด: en.wikipedia.org/wiki/...
Max Candocia

เหล่านี้อาจทำงานได้ดีขึ้นโดยทั่วไป: analyticalgroup.com/download/WEIGHTED_MEAN.pdf
แม็กซ์ Candocia

5

Wผม

wi2Var(X)(wi)2=Var(X)wi2(wi)2.
wi
Var(X)E(wi2(wi)2)
XiVar(X)

xixx¯(1x¯)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.