Я хочу сделать прогноз на рост ребенка, исходя из высоты отцов + матери и пола и визуализировать это.Добавление 2-й плоскости к рассеянному плану3d
Без гендерной переменной я все еще могу представить это на трехмерном графике.
Но когда я добавляю пол, я бы хотел иметь 2 поверхностных графика, один для пола == мужской и один для пола == женский. Есть ли элегантный способ исправить эту гендерную переменную в модели fit2
, так что я могу построить оба?
library(fields)
library(scatterplot3d)
library(ggplot2)
library(UsingR)
data(GaltonFamilies)
attach(GaltonFamilies)
fit <- lm(childHeight ~ mother + father)
fit2 <- lm(childHeight ~ mother + father + gender)
colorSet <- tim.colors(2)
s3d <- scatterplot3d(father,mother,childHeight,color=colorSet[gender])
detach(GaltonFamilies)
s3d$plane3d(fit)
Подгонка в том числе пола выглядит следующим образом:
> fit2
Call:
lm(formula = childHeight ~ mother + father + gender)
Coefficients:
(Intercept) mother father gendermale
16.5212 0.3176 0.3928 5.2150
Но когда я tryto участок два поверхностных струй для обоих полов я получаю сообщение об ошибке:
s3d$plane3d(fit2)
Error in segments(x, z1, x + y.max * yx.f, z2 + yz.f * y.max, lty = ltya, :
cannot mix zero-length and non-zero-length coordinates
I «Мне нравится иметь что-то подобное, знает ли кто-нибудь, как это возможно?
s3d$plane3d(fit2(gendermale=1))
s3d$plane3d(fit2(gendermale=0))