Вам потрібно подумати про те, що ви маєте на увазі під «межею». Існують обмеження, наприклад, коли у вас більше прогнозів, ніж випадків, ви стикаєтеся з питаннями оцінки параметрів (див. Маленьке моделювання R внизу цієї відповіді).
Однак, я думаю, ви більше говорите про м'які межі, пов'язані зі статистичною силою та хорошою статистичною практикою. У цьому випадку мова "обмежень" насправді не підходить. Швидше, більші розміри вибірки, як правило, роблять більш розумним наявність більшої кількості прогнозів, і поріг того, скільки передбачувачів є розумним, можливо, падає на континуум розумності. Ви можете знайти обговорення правил великого пальця для розміру вибірки при множинній регресії , оскільки багато таких правил указують на кількість предикторів.
Кілька пунктів
- Якщо вас більше турбує загальне прогнозування, ніж статистична значимість окремих прогнозів, то, ймовірно, розумно включати більше прогнозів, ніж якщо ви переймаєтесь статистичною значимістю окремих прогнозів.
- Якщо вас більше турбує тестування конкретної статистичної моделі, що стосується вашого дослідницького питання (наприклад, як це часто зустрічається у багатьох соціальних наукових програмах), мабуть, у вас є причини включення конкретних прогнозів. Однак ви також можете мати вибірковість щодо того, які прогноктори ви включаєте (наприклад, якщо у вас є кілька змінних, які вимірюють подібну конструкцію, ви можете включити лише одну з них). Під час тестування моделей на основі теорії існує багато варіантів, і рішення про те, які прогноктори включити, передбачає тісний зв’язок між вашою теорією та питанням дослідження.
- Я не часто бачу дослідників, які використовують коригування бонферроні, застосовувані до тестів на значимість коефіцієнтів регресії. Однією з розумних причин цього може бути те, що дослідники більше зацікавлені в оцінці загальних властивостей моделі.
- Якщо ви зацікавлені в оцінці відносної важливості прогнозів, я вважаю корисним вивчити як двоваріантну взаємозв'язок між прогноктором та результатом, так і взаємозв'язок між прогноктором і контролем результатів для інших прогнозів. Якщо ви включаєте безліч предикторів, часто більше шансів на те, що ви включаєте прогнози, які сильно взаємопов'язані. У таких випадках інтерпретація як біваріантних, так і на основі моделей індексів важливості може бути корисною, оскільки змінна, важлива в біваріантному сенсі, може бути прихована в моделі іншими співвіднесеними прогнозами ( я детальніше про це детальніше опитую тут за посиланнями ).
Трохи моделювання R
Я написав це маленьке моделювання, щоб виділити залежність між розміром вибірки та оцінкою параметрів при множинній регресії.
set.seed(1)
fitmodel <- function(n, k) {
# n: sample size
# k: number of predictors
# return linear model fit for given sample size and k predictors
x <- data.frame(matrix( rnorm(n*k), nrow=n))
names(x) <- paste("x", seq(k), sep="")
x$y <- rnorm(n)
lm(y~., data=x)
}
fitmodel
Функція приймає два аргументи n
для розміру вибірки і k
для числа провісників. Я не вважаю константу як предиктор, але вона оцінюється. Потім я генерую випадкові дані та підходить до регресійної моделі, що передбачає змінну з прогнозних k
змінних і повертає придатність.
Зважаючи на те, що ви згадали у своєму запитанні, що вас цікавило, чи 10 предикторів занадто багато, наступні виклики функцій показують, що відбувається, коли розмір вибірки становить 9, 10, 11 та 12 відповідно. Тобто, розмір вибірки на один менший, ніж кількість предикторів, на два більше, ніж кількість предикторів
summary(fitmodel(n=9, k=10))
summary(fitmodel(n=10, k=10))
summary(fitmodel(n=11, k=10))
summary(fitmodel(n=12, k=10))
> підсумок (fitmodel (n = 9, k = 10))
Call:
lm(formula = y ~ ., data = x)
Residuals:
ALL 9 residuals are 0: no residual degrees of freedom!
Coefficients: (2 not defined because of singularities)
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.31455 NA NA NA
x1 0.34139 NA NA NA
x2 -0.45924 NA NA NA
x3 0.42474 NA NA NA
x4 -0.87727 NA NA NA
x5 -0.07884 NA NA NA
x6 -0.03900 NA NA NA
x7 1.08482 NA NA NA
x8 0.62890 NA NA NA
x9 NA NA NA NA
x10 NA NA NA NA
Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared: 1, Adjusted R-squared: NaN
F-statistic: NaN on 8 and 0 DF, p-value: NA
Розмір вибірки на один менше, ніж кількість предикторів. Оцінити можна лише 9 параметрів, одним з яких є константа.
> резюме (fitmodel (n = 10, k = 10))
Call:
lm(formula = y ~ ., data = x)
Residuals:
ALL 10 residuals are 0: no residual degrees of freedom!
Coefficients: (1 not defined because of singularities)
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.1724 NA NA NA
x1 -0.3615 NA NA NA
x2 -0.4670 NA NA NA
x3 -0.6883 NA NA NA
x4 -0.1744 NA NA NA
x5 -1.0331 NA NA NA
x6 0.3886 NA NA NA
x7 -0.9886 NA NA NA
x8 0.2778 NA NA NA
x9 0.4616 NA NA NA
x10 NA NA NA NA
Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared: 1, Adjusted R-squared: NaN
F-statistic: NaN on 9 and 0 DF, p-value: NA
Розмір вибірки такий же, як кількість предикторів. Оцінити можна лише 10 параметрів, одним з яких є константа.
> резюме (fitmodel (n = 11, k = 10))
Call:
lm(formula = y ~ ., data = x)
Residuals:
ALL 11 residuals are 0: no residual degrees of freedom!
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.9638 NA NA NA
x1 -0.8393 NA NA NA
x2 -1.5061 NA NA NA
x3 -0.4917 NA NA NA
x4 0.3251 NA NA NA
x5 4.4212 NA NA NA
x6 0.7614 NA NA NA
x7 -0.4195 NA NA NA
x8 0.2142 NA NA NA
x9 -0.9264 NA NA NA
x10 -1.2286 NA NA NA
Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared: 1, Adjusted R-squared: NaN
F-statistic: NaN on 10 and 0 DF, p-value: NA
Розмір вибірки на один більше, ніж кількість предикторів. Всі параметри оцінюються, включаючи постійні.
> резюме (fitmodel (n = 12, k = 10))
Call:
lm(formula = y ~ ., data = x)
Residuals:
1 2 3 4 5 6 7 8 9 10 11
0.036530 -0.042154 -0.009044 -0.117590 0.171923 -0.007976 0.050542 -0.011462 0.010270 0.000914 -0.083533
12
0.001581
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.14680 0.11180 1.313 0.4144
x1 0.02498 0.09832 0.254 0.8416
x2 1.01950 0.13602 7.495 0.0844 .
x3 -1.76290 0.26094 -6.756 0.0936 .
x4 0.44832 0.16283 2.753 0.2218
x5 -0.76818 0.15651 -4.908 0.1280
x6 -0.33209 0.18554 -1.790 0.3244
x7 1.62276 0.21562 7.526 0.0841 .
x8 -0.47561 0.18468 -2.575 0.2358
x9 1.70578 0.31547 5.407 0.1164
x10 3.25415 0.46447 7.006 0.0903 .
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.2375 on 1 degrees of freedom
Multiple R-squared: 0.995, Adjusted R-squared: 0.9452
F-statistic: 19.96 on 10 and 1 DF, p-value: 0.1726
Розмір вибірки на два більше, ніж кількість прогнозів, і остаточно можна оцінити відповідність загальної моделі.