วิธีปรับให้พอดีกับการถดถอยเช่นใน R?


9

ฉันมีข้อมูลอนุกรมเวลาที่ตัวแปรที่วัดได้นั้นเป็นจำนวนเต็มบวกแบบไม่ต่อเนื่อง (นับ) ฉันต้องการทดสอบว่ามีแนวโน้มสูงขึ้นเมื่อเวลาผ่านไป (หรือไม่) ตัวแปรอิสระ (x) อยู่ในช่วง 0-500 และตัวแปรที่ขึ้นต่อกัน (y) อยู่ในช่วง 0-8

ฉันคิดว่าฉันตอบคำถามนี้โดยปรับการถดถอยของแบบฟอร์มy = floor(a*x + b)โดยใช้กำลังสองน้อยที่สุดธรรมดา (OLS)

ฉันจะทำสิ่งนี้โดยใช้ R (หรือ Python) ได้อย่างไร มีแพ็คเกจที่มีอยู่สำหรับมันหรือฉันดีกว่าที่จะเขียนอัลกอริทึมของตัวเอง?

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


5
แม้ว่ามันจะเป็นเรื่องธรรมดาทางคณิตศาสตร์ที่จะลองใช้การถดถอยของแบบฟอร์มนี้ แต่ก็ยังมีข้อผิดพลาดทางสถิติ: ระยะเวลาของข้อผิดพลาดจะมีความสัมพันธ์อย่างมากกับค่าที่ทำนายไว้ นั่นเป็นการละเมิดสมมติฐานของ OLS ค่อนข้างมาก ให้ใช้เทคนิคการนับตามที่แนะนำโดยการตอบกลับของ Greg Snow (ฉันดีใจที่ตอบคำถามนี้ด้วยความดีใจเพราะมันสะท้อนถึงความคิดและความฉลาดจริง ๆ ขอขอบคุณที่คุณถามที่นี่!)
whuber

คำตอบ:


11

คุณสามารถใส่แบบจำลองที่คุณระบุโดยใช้ฟังก์ชันnls(ไม่เป็นเชิงเส้นกำลังสองน้อยที่สุด) Rได้ แต่ในขณะที่คุณบอกว่าจะละเมิดสมมติฐานจำนวนมากและยังคงอาจไม่สมเหตุสมผล (คุณกำลังบอกว่าผลลัพธ์ที่คาดการณ์นั้นสุ่มรอบ ๆ ฟังก์ชั่นไม่ใช่ค่าจำนวนเต็มรอบความสัมพันธ์ที่เพิ่มขึ้นอย่างราบรื่น)

วิธีที่ใช้กันมากขึ้นเพื่อให้พอดีกับข้อมูลการนับคือการใช้ปัวซองถดถอยโดยใช้glmฟังก์ชั่นในRตัวอย่างแรกในหน้าช่วยเหลือคือปัวซงถดถอย แต่ถ้าคุณไม่คุ้นเคยกับสถิติมันจะเป็นการดีที่สุดที่จะปรึกษากับนักสถิติ ว่าคุณกำลังทำสิ่งต่าง ๆ อย่างถูกต้อง

หากค่า 8 เป็นค่าสูงสุดแน่นอน (เป็นไปไม่ได้ที่จะเห็นจำนวนที่สูงกว่าไม่ใช่แค่สิ่งที่คุณเห็น) จากนั้นคุณอาจพิจารณาการถดถอยโลจิสติกอัตราต่อรองแบบสัดส่วนมีเครื่องมือสองอย่างที่ต้องทำในแพ็คเกจสำหรับRแต่คุณ ควรมีนักสถิติเข้ามาเกี่ยวข้องหากคุณต้องการทำสิ่งนี้


"คุณกำลังพูดถึงผลลัพธ์ที่คาดการณ์ว่าจะสุ่มรอบฟังก์ชันขั้นตอนไม่ใช่ค่าจำนวนเต็มรอบความสัมพันธ์ที่เพิ่มขึ้นอย่างราบรื่น" --- นั่นคือสิ่งที่ฉันไม่ได้พิจารณา ในท้ายที่สุดฉันไปกับปัวซงถดถอยโดย glm มันไม่ใช่ตัวเลือกที่สมบูรณ์แบบ แต่ "ดีพอ" สำหรับสิ่งที่ฉันต้องการ
afaulconbridge

10

มันเป็นธรรมดาที่คำแนะนำของ Greg เป็นสิ่งแรกที่ต้องลอง: ปัวซองการถดถอยเป็นรูปแบบธรรมชาติในคอนกรีตจำนวนมาก สถานการณ์

อย่างไรก็ตามรูปแบบที่คุณกำลังบอกเป็นนัย ๆ สามารถเกิดขึ้นได้ตัวอย่างเช่นเมื่อคุณสังเกตข้อมูลกลม: มีข้อผิดพลาดปกติ IID \

Yi=axi+b+ϵi,
ϵi

ฉันคิดว่านี่น่าสนใจที่จะดูว่าสามารถทำอะไรได้บ้าง ฉันเขียนโดย the cdf ของตัวแปรปกติมาตรฐาน ถ้าดังนั้น โดยใช้สัญลักษณ์คอมพิวเตอร์ที่คุ้นเคยFϵN(0,σ2)

P(ax+b+ϵ=k)=F(kb+1axσ)F(kbaxσ)=pnorm(k+1axb,sd=σ)pnorm(kaxb,sd=σ),

คุณสังเกตจุดข้อมูลy_i) บันทึกความเป็นไปได้ที่ได้รับจาก สิ่งนี้ไม่เหมือนสี่เหลี่ยมจัตุรัสน้อยที่สุด คุณสามารถลองขยายให้ใหญ่สุดด้วยวิธีตัวเลข นี่คือภาพประกอบใน R:(xi,yi)

(a,b,σ)=ilog(F(yib+1axiσ)F(yibaxiσ)).
log_lik <- function(a,b,s,x,y)
  sum(log(pnorm(y+1-a*x-b, sd=s) - pnorm(y-a*x-b, sd=s)));

x <- 0:20
y <- floor(x+3+rnorm(length(x), sd=3))
plot(x,y, pch=19)
optim(c(1,1,1), function(p) -log_lik(p[1], p[2], p[3], x, y)) -> r
abline(r$par[2], r$par[1], lty=2, col="red")
t <- seq(0,20,by=0.01)
lines(t, floor( r$par[1]*t+r$par[2]), col="green")

lm(y~x) -> r1
abline(r1, lty=2, col="blue");

โมเดลเชิงเส้นโค้งมน

ในสีแดงและสีน้ำเงินเส้นพบโดยการเพิ่มจำนวนสูงสุดของความน่าจะเป็นนี้และกำลังสองน้อยที่สุดตามลำดับ บันไดสีเขียวคือสำหรับพบจากความเป็นไปได้สูงสุด ... สิ่งนี้แนะนำว่าคุณสามารถใช้กำลังสองน้อยที่สุดได้มากถึงการแปล 0.5 และได้ผลลัพธ์เดียวกัน หรืออย่างน้อยสี่เหลี่ยมจัตุรัสพอดีกับโมเดล ที่เป็นจำนวนเต็มที่ใกล้ที่สุด ข้อมูลที่ถูกปัดเศษมักพบว่าฉันแน่ใจว่าสิ่งนี้เป็นที่รู้จักและได้รับการศึกษาอย่างกว้างขวาง ...ax+bax+ba,bb

Yi=[axi+b+ϵi],
[x]=x+0.5

4
+1 ฉันรักเทคนิคนี้และส่งบทความลงในวารสารการวิเคราะห์ความเสี่ยงเมื่อไม่กี่ปีที่ผ่านมา (นักวิเคราะห์ความเสี่ยงบางคนสนใจข้อมูลช่วงเวลาที่มีค่า) มันถูกปฏิเสธว่าเป็น "คณิตศาสตร์มากเกินไป" สำหรับผู้ชม :-(. หนึ่งเคล็ดลับ: เมื่อใช้วิธีการเชิงตัวเลขมันเป็นความคิดที่ดีที่จะให้ค่าเริ่มต้นที่ดีสำหรับการแก้ปัญหาลองใช้ OLS กับข้อมูลดิบเพื่อรับค่าเหล่านั้นจากนั้น "ขัด" พวกเขาด้วยเครื่องมือเพิ่มประสิทธิภาพตัวเลข
whuber

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