识别 r 中的回归样本

Identify regression sample in r

我有一个一般性问题。无论如何,我可以识别(或标记)R 回归中使用的观察结果吗?

lligator = data.frame(lnLength = c(3.87, 3.61, NA, 3.43, 3.81, 3.83, 3.46, 3.76,
3.50, 3.58, 4.19, 3.78, 3.71, 3.73, 3.78),lnWeight = c(4.87, 3.93, 6.46, 3.33, 4.38, 4.70, 3.50, 4.50,NA, 3.64, 5.90, 4.43, 4.38, 4.42, 4.25))

t.test=lm(lnWeight ~ lnLength, data = alligator)

我想创建一个数据框,其中另一列指示使用了哪个观察值。我知道如何

na.omit() 

na.exclude()

.completecases

工作,我可以使用它们进行回归。但我正在寻找的是一种创建指标以显示使用了哪种观察的方法。对于那些 Stata 用户,类似于 e(sample)

如果我理解正确,您可以使用 na.action() 检索在回归过程中排除的索引向量,并使用它来计算指示变量:

alligator$used <- !seq_len(nrow(alligator))%in%na.action(t.test);
alligator;
##    lnLength lnWeight  used
## 1      3.87     4.87  TRUE
## 2      3.61     3.93  TRUE
## 3        NA     6.46 FALSE
## 4      3.43     3.33  TRUE
## 5      3.81     4.38  TRUE
## 6      3.83     4.70  TRUE
## 7      3.46     3.50  TRUE
## 8      3.76     4.50  TRUE
## 9      3.50       NA FALSE
## 10     3.58     3.64  TRUE
## 11     4.19     5.90  TRUE
## 12     3.78     4.43  TRUE
## 13     3.71     4.38  TRUE
## 14     3.73     4.42  TRUE
## 15     3.78     4.25  TRUE

等效但可能更快的方法:

alligator$used <- TRUE;
alligator$used[na.action(t.test)] <- FALSE;