如何用R语言对不是10变量的被解释变量做中介效应分析

我用mediation来做中介效应分析

med.fit=lm(GAP~DIF+JOB+GOV+STRU+NGDP+URB,data=df)
out.fit=glm(CON~GAP+DIF+JOB+GOV+STRU+NGDP+URB,data=df,family=binomial("probit"))
med.out=mediate(med.fit,out.fit,treat="DIF",mediator="GAP",robustSE=TRUE,sims=100)
summary(med.out)

被解释变量CON是个连续型变量
运行时候说y值必需满足0<=y<=1
请问这种情况下要怎么改

还试过用lavaan,但是那个不知道怎么把控制变量加上去

归一化被解释变量

# 归一化被解释变量
df$CON_normalized <- (df$CON - min(df$CON)) / (max(df$CON) - min(df$CON))

# 进行中介效应分析
med.fit <- lm(GAP ~ DIF + JOB + GOV + STRU + NGDP + URB, data = df)
out.fit <- glm(CON_normalized ~ GAP + DIF + JOB + GOV + STRU + NGDP + URB, data = df, family = binomial("probit"))
med.out <- mediate(med.fit, out.fit, treat = "DIF", mediator = "GAP", robustSE = TRUE, sims = 100)
summary(med.out)

将被解释变量转换为概率形式

# 将被解释变量转换为概率形式
df$CON_prob <- plogis(df$CON)

# 进行中介效应分析
med.fit <- lm(GAP ~ DIF + JOB + GOV + STRU + NGDP + URB, data = df)
out.fit <- glm(CON_prob ~ GAP + DIF + JOB + GOV + STRU + NGDP + URB, data = df, family = binomial("probit"))
med.out <- mediate(med.fit, out.fit, treat = "DIF", mediator = "GAP", robustSE = TRUE, sims = 100)
summary(med.out)