Регрессия к среднему
Я пытаюсь смоделировать регрессию к среднему с разными терминами ошибок. Сделав это, я начал с моделирования двух наборов данных с одинаковым средним и одинаковым стандартным отклонением:
fathers <- rnorm(1000, mean = 50, sd = 1.2)
sons <- fathers + rnorm(1000, mean = 0, sd = 1.2)
Основываясь на идее, что сыновья отцов выше среднего, они короче своих отцов, я создал отрезок для сыновей и отцов.
cutoffFathers <- квантиль (отцы,.75) tallFathers <- отцы> cutoffFathers
cutoffSons <- quantile(sons, .75)
tallSons <- sons > cutoffSons
Чтобы количественно оценить регрессию до среднего, я хочу рассчитать какое-то соотношение, показывающее, сколько высоких сыновей с высокими отцами по сравнению с маленькими сыновьями с высокими отцами. Моя отправная точка для этого заключается в следующем:
sum(tallSons[tallFathers])
sum(!tallSons[tallFathers])
Я думаю, я мог бы рассчитать отношение для количественного определения регрессии к среднему с использованием деления (хотя я не уверен, что это правильный подход):
sum(tallSons[tallFathers])/ sum(!tallSons[tallFathers])
Если бы это было правильно, я подумал, что мог бы написать функцию, которая вычисляет это отношение, а затем запустить цикл for, который принимает в качестве входных данных различные стандартные отклонения и вычисляет отношение для количественного определения регрессии к среднему значению, используя ранее определенную функцию. Что-то вроде этого:
QuantifyRTM<-function(x){
...?
}
SDs<-seq(from=0, to=1, by= .1)
SDs
for(i in SDs){
fathers <- rnorm(1000, mean = 50, sd = i)
sons <- fathers + rnorm(1000, mean = 0, sd = i)
cutoffFathers <- quantile(fathers, .75)
tallFathers <- fathers > cutoffFathers
cutoffSons <- quantile(sons, .75)
tallSons <- sons > cutoffSons
QuantifyRTM(sum(tallSons[tallFathers])/ sum(!tallSons[tallFathers])
print
}
Тем не менее, это только мое лучшее предположение, и я действительно не знаю, правильно ли я подхожу к этой проблеме. Если кто-то может помочь мне с этим или поделиться своими мыслями, я буду вечно благодарен.