R 黄土回归到负值

R 黄土回归到负值,r,ggplot2,loess,R,Ggplot2,Loess,我目前正在尝试将黄土回归拟合到我的数据集(生物量的纬度分布)。我使用了以下代码: ggplot(data=test)+ geom_point(aes(y=log10(value+1), x=lat, colour=variable), alpha=0.5)+ stat_smooth(aes(y=log10(value+1), x=lat, colour=variable, fill=variable), size=1, alpha=0.1)+ scale_y_continuous("

我目前正在尝试将黄土回归拟合到我的数据集(生物量的纬度分布)。我使用了以下代码:

ggplot(data=test)+
  geom_point(aes(y=log10(value+1), x=lat, colour=variable), alpha=0.5)+
  stat_smooth(aes(y=log10(value+1), x=lat, colour=variable, fill=variable), size=1, alpha=0.1)+
  scale_y_continuous("Depth-integrated biomass (mgC.m-2)")+
  scale_x_continuous("Latitude", limits=c(-70, 80), breaks=seq(-70, 80, 10))+
  coord_flip()+
  theme_bw()+
  theme(legend.background = element_rect(colour = "black"))
问题是,当我没有低于0的值时,回归会低于0。。。 有没有办法强制回归不超过0? 我试着改变“跨度”值,这更好,但黄土曲线的某些部分仍然为负值。Xlim=c(0,X)不好,因为它会切割曲线


谢谢。

黄土方法假定了一个无界分布,因此如果数据接近0,可以很容易地降到0以下。中的一个选项用于处理对数比例(将模型与y值的对数相匹配,然后将预测值求幂以进行绘图等)。

黄土方法假定为无界分布,因此如果数据接近0,则很容易降到0以下。中的一个选项用于处理对数比例(将模型拟合到y值的对数,然后将预测值求幂以进行打印等)

如果要限制y值,为什么要设置xlim?但是,无论采用哪种方式,xlim和ylim都只用于过滤底层数据集,因此无法解决您的问题。避免0值的另一种方法是使用不同的模型:如果所有观测值均为正值,则线性回归不应插值负值。或者,也许像逻辑回归这样的东西适合你的数据


将这些类型的拟合添加到数据中实际上非常简单,只需添加
method=glm
family=binomial
,例如,在
stat\u smooth
中,如果要限制y值,为什么要设置xlim?但是,无论采用哪种方式,xlim和ylim都只用于过滤底层数据集,因此无法解决您的问题。避免0值的另一种方法是使用不同的模型:如果所有观测值均为正值,则线性回归不应插值负值。或者,也许像逻辑回归这样的东西适合你的数据

将这些类型的拟合添加到数据实际上相当简单,只需添加
method=glm
family=binomial
,例如,在
stat\u smooth