การบูรณาการ CDF เชิงประจักษ์


13

ฉันมีการกระจายเชิงประจักษ์ ) ฉันคำนวณมันดังนี้G(x)

    x <- seq(0, 1000, 0.1)
    g <- ecdf(var1)
    G <- g(x)

ฉันแสดงว่าคือhคือ pdf ในขณะที่Gคือ cdfh(x)=dG/dxhG

ตอนนี้ฉันต้องการแก้สมการสำหรับการรวมสูงสุด (พูด, ), ดังนั้นค่าคาดหวังของxคือkบางอันaxk

นั่นคือการบูรณาการจากไปผมควรจะมีx H ( x ) d x = k ฉันต้องการที่จะแก้ปัญหาสำหรับข0bxh(x)dx=kb

เมื่อรวมส่วนต่าง ๆ ฉันสามารถเขียนสมการใหม่เป็น

ซึ่งอินทิกรัลมาจาก 0ถึง b ------- (1)bG(b)0bG(x)dx=k0b

ฉันคิดว่าฉันสามารถคำนวณอินทิกรัลได้ดังนี้

    intgrl <- function(b) {
        z <- seq(0, b, 0.01)
        G <- g(z)
        return(mean(G))
     }

แต่เมื่อลองใช้ฟังก์ชั่นนี้ด้วย

    library(rootSolve)
    root <- uniroot.All(fun, c(0, 1000))

เมื่อความสนุกคือ eq (1) ฉันได้รับข้อผิดพลาดต่อไปนี้

    Error in seq.default(0, b, by = 0.01) : 'to' must be of length 1  

ฉันคิดว่าปัญหาคือฟังก์ชั่นของฉันintgrlถูกประเมินที่ค่าตัวเลขขณะที่uniroot.Allผ่านช่วงเวลาc(0,1000)

ฉันจะแก้ปัญหาในสถานการณ์นี้ใน R ได้อย่างไร?b

คำตอบ:


13

x1x2xnGxiγkxiγt1xiγ[α,β]γGk/nγ(k+t)/nγ

ECDF

0bxh(x)dx[α,β]ht/nγ[α,β]

αβxh(x)dx=(xG(x))|αβαβG(x)dx=(βG(β)αG(α))αβG(x)dx.

γG

αβG(x)dx=αγG(α)dx+γβG(β)dx=(γα)G(α)+(βγ)G(β).

G(α)=k/n,G(β)=(k+t)/n

αβxh(x)dx=(βG(β)αG(α))((γα)G(α)+(βγ)G(β))=γtn.

X

tn=1n++1n

γG

0bxh(x)dx=i:0xib(xi1n)=1nxibxi.

1/n[0,b]1/n1/mm[0,b]

kb1nxibxi=k.kj

1ni=1j1xik<1ni=1jxi,

b[xj1,xj)b


Rทำการคำนวณผลรวมบางส่วนด้วยcumsumและค้นหาว่ามันข้ามค่าใด ๆ ที่ระบุโดยใช้whichตระกูลการค้นหาเช่นเดียวกับใน:

set.seed(17)
k <- 0.1
var1 <- round(rgamma(10, 1), 2)
x <- sort(var1)
x.partial <- cumsum(x) / length(x)
i <- which.max(x.partial > k)
cat("Upper limit lies between", x[i-1], "and", x[i])

เอาต์พุตในตัวอย่างของข้อมูลที่ถูกดึงจากการแจกแจงเอ็กซ์โปเนนเชียลคือ

ขีด จำกัด สูงสุดอยู่ระหว่าง 0.39 ถึง 0.57

0.1=0bxexp(x)dx,0.531812

G

รูปของ ECDF


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