我试图使用R中的“分段”软件包来拟合以下分段回归模型。
lin.mod.1a <- lm(WTM[Treatment=="A"]~RE[Treatment=="A"])
seg.mod.1a <- segmented(lin.mod.1a,seg.Z=~RE[Treatment=="A"],psi=2) 我得到以下错误
Error in segmented.lm(lin.mod.1a, seg.Z = ~RE[Treatment == "A"], psi = 2) :
'psi' should be a list with more than one covariate in `seg.Z在没有定义治疗术语的情况下,我对分段模型的拟合没有任何问题,但是我真的想在Treatment=="A“时拟合这个模型。我明白这个错误是什么意思,但我不知道如何避免它。
发布于 2014-06-04 15:57:27
来自?segmented帮助页的?segmented部分
目前,不允许涉及函数(如
seg.Z=~log(x1)或seg.Z=~sqrt(x1))或选择运算符(如seg.Z=~d[,"x1"]或seg.Z=~d$x1)的公式。
因此,听起来您应该在尝试此方法之前将数据子集化。
WTM.a <- WTM[Treatment=="A"]
RE.a <- RE[Treatment=="A"]
lin.mod.1a <- lm(WTM.a~RE.a)
seg.mod.1a <- segmented(lin.mod.1a,seg.Z=~RE.a,psi=2) https://stackoverflow.com/questions/24041100
复制相似问题