簡體   English   中英

R Segmented:有沒有辦法強制斷點?

[英]R Segmented: Is there a way to force breakpoints?

我正在嘗試通過R中的Segmented in R進行年度百分比變化分析。我已經知道我要在哪里出現斷點,但是我似乎找不到找到一種方法來強迫Segmented使用這些點。

我有166周的每周費率數據,並將其分為3個時期。 有兩個斷點將這三個時段划分為52和53周以及115和116周。

據我所知,斷點的唯一輸入是“ psi =”參數。 但是,這僅允許我輸入起點,根據該起點,分段可以估算出最合適的斷點。

相反,我已經知道我要在哪里出現斷點,並且我正在尋找在模型中設置這些斷點的方法。

weekly <- read.csv("data.csv")

lm <- lm(Rate ~ Week, data = weekly)
summary(lm)

segment <- segmented(lm,
                     seg.Z = ~ Week,
                     psi = list(Week = c(53, 116)))

fitted <- fitted(segment)
model <- data.frame(Week = weekly$Week, Rate = fitted)

最后,這給了我一個模型,該模型適合於發現的分段估計,而不是適合於53和116的預期斷點。

有沒有一種方法可以強制分段在每個分段上使用某些斷點,或者是否有另一個軟件包可以做到這一點?

也許您可以嘗試使用:

weekly <- as.factor(cut(weekly$week, c(0, 53, 116))

levels(weekly$week) 
0-53, 53-116, 116+

lm <- lm(Rate ~ Week, data = weekly)

現在,weekly $ week是一個因素,其水平將等於0-53、53-116、116 +

然后,您應該能夠將這些級別添加到lm中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM