原文链接:http://tecdat.cn/?p=26147 

本文应用的数据集记录了 1236 名新生婴儿的体重,以及他们母亲的其余协变量。

本钻研的目标是测量吸烟对新生儿体重的影响。钻研人员须要通过管制其余协变量(例如母亲的体重和身高)来隔离其影响。这能够通过应用多元回归模型来实现,例如,通过思考权重  Y_i  能够建模为

 Y\_i = beta\_0 + beta\_1 x\_{i,1} + ldots + beta\_p x\_{i,p} + varepsilon_i 

str(babis)

数据集的形容如下:

  • bwt 是因变量,新生儿体重以盎司为单位。数据集应用 999 作为缺失值。
  • gestation 是怀孕的工夫,以天为单位。999 是缺失值的代码。
  • parity 第一胎应用 0,否则应用 1,缺失值应用 9。
  • age 是母亲的年龄,整数。99 是缺失值。
  • height 是母亲的身高。99 是缺失值。
  • weight 是母亲的体重,以磅为单位。999 是一个缺失值。
  • smoke 是一个分类变量,示意母亲当初是否吸烟 (1) (0)。9 是缺失值。

这个问题的钻研人员想要判断以下内容:

  • 吸烟的母亲会减少早产率。
  • 吸烟者的新生儿在每个胎龄都较小。
  • 与母亲的孕前身高和体重、产次、既往妊娠终局史或婴儿性别(这最初两个协变量不可用)相比,吸烟仿佛是出世体重的一个更重要的决定因素。

咱们将专一于第二个判断

从str()命令中留神到,所有的变量都被存储为整数。我将把缺失值转换为NAs,这是R中缺失值的正确示意。

bwt == 999\] <- NA# 有多少察看后果是缺失的?sapply(babies, couna)

每当您在 R 中应用函数时,请记住,默认状况下它可能有也可能没有 na-action。例如,该 mean() 函数没有,并且 NA 在将短少值的参数传递给它时简略地返回:

sapply(babies, mean)

您能够通过查看 mean() 函数帮忙来纠正它,通过一个参数 na.rm=TRUE,它删除了 NAs。

sapply(babies, mean, na.rm = TRUE)

另一方面, 默认状况下summary() 会删除 NAs,并输入找到的 NAs 数量,这使其成为汇总数据时的首选。

summary(babies)

咱们能够看到转换因子显示了不同的摘要,因为 summary() 操作依据变量类型而变动:

parity <- factor(parity, levels )

绘制数据是您应该采取的第一个操作。我将应用 lattice 包来绘制它,因为它的最大劣势在于解决多变量数据。

require(lattice)xyplot

为了拟合多元回归模型,咱们应用命令 lm()

model <- lm(bwt ~ ., data = babies)

这是总结:

summary(model)

留神R的默认动作是删除信息缺失的行。不过,如何解释这些系数呢?

如果j协变量xj是实值,那么系数j的值就是在其余协变量不变的状况下,将xij减少1个单位对Yi的均匀影响。
如果j协变量xj是分类的,那么系数j的值是对Yi从参考类别到指定程度的均匀增量影响,而其余协变量放弃不变。参考类别的平均值是截距(或参考类别,如果模型中有一个以上的分类协变量)。
为了验证这些假如,R有一个绘图计划。
 

残差中的曲率表明,须要进行一些转换。尝试取bwt的对数,以取得更好的拟合(与妊娠期相比)。 

summary(model.log)

为了简略起见,我会保留线性模型。给妊娠期减少一个二次项可能有用。公式通常保留^作为交互作用的快捷方式,所以(妊娠期+烟)^2与妊娠期*烟或妊娠期+烟+妊娠期:烟雷同。二次项。

改良依然很小,但它当初的确将察看 261 显示为异样值。这个察看有什么问题?

babies\[261, \]

咱们能够看到,而母亲的身高、年龄等都十分正当;这个婴儿异样早产。因而,将他/她剔除出模型。

拟合度有所提高,但当初870号婴儿显示为异样值......这能够继续下去,直到咱们都称心为止。你还会做哪些转化?将吸烟和妊娠期交互作用会更好吗?


最受欢迎的见解

1.R语言多元Logistic逻辑回归 利用案例

2.面板平滑转移回归(PSTR)剖析案例实现剖析案例实现")

3.matlab中的偏最小二乘回归(PLSR)和主成分回归(PCR)

4.R语言泊松Poisson回归模型剖析案例

5.R语言混合效应逻辑回归Logistic模型剖析肺癌

6.r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现

7.R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病

8.python用线性回归预测股票价格

9.R语言用逻辑回归、决策树和随机森林对信贷数据集进行分类预测