Kalkulatory · Moderacja

Kalkulator efektów prostych i przedziału Johnsona–Neymana: sondowanie interakcji w regresji

Wpisz współczynniki modelu z interakcją i trzy liczby z macierzy kowariancji, a dostaniesz proste nachylenia z SE, t, p i przedziałem ufności, granice Johnsona–Neymana w każdym możliwym układzie i wykres efektu warunkowego z pasmem ufności.

Strona główna / Blog / Kalkulator Johnsona–Neymana
W skrócie: Efekt X przy wartości moderatora W to θ = b1 + b3W, a jego błąd standardowy wymaga nie tylko wariancji obu współczynników, ale też ich kowariancji. Granice Johnsona–Neymana to pierwiastki równania kwadratowego: przy istotnej interakcji są zawsze dwie, a efekt jest istotny poza nimi; przy nieistotnej – dwie albo żadna. Interpretuj tylko granice z obserwowanego zakresu moderatora i podawaj odsetek osób w obszarze istotności.

Kalkulator efektów prostych i granic Johnsona–Neymana

Przy jakich wartościach moderatora efekt X jest istotny?

Wpisz współczynniki modelu Y = b0 + b1X + b2W + b3XW, trzy elementy macierzy kowariancji współczynników i opis moderatora. Ułamki wpisuj z kropką albo z przecinkiem. Domyślne wartości to przykład omówiony niżej. Obliczenia wykonuje Twoja przeglądarka: wpisane liczby nie są nigdzie wysyłane ani zapisywane.

Kalkulator wymaga włączonej obsługi JavaScriptu. Wyniki dla wartości domyślnych znajdziesz w przykładzie poniżej.

Gotowy opis do pracy

Opis wyniku pojawi się tutaj po obliczeniu.

Jak używać kalkulatora

Kalkulator przyda się, gdy masz już oszacowany model z interakcją, a recenzent albo promotor pyta: „przy jakich wartościach moderatora ten związek jest istotny?”. Nie potrzebuje surowych danych. Wystarczą liczby, które każdy program do regresji wielorakiej wypisuje albo potrafi wypisać. Całą analizę moderacji, od hipotezy po diagnostykę, opisuje poradnik analiza moderacji krok po kroku. Tutaj zajmujemy się tylko sondowaniem interakcji, gdy model jest już gotowy.

  1. Współczynniki. Przepisz b1 (predyktor X), b3 (iloczyn X × W) oraz – jeśli chcesz zobaczyć równania prostych regresji – b0 i b2. Wpisuj współczynniki niestandaryzowane, z tego samego modelu.
  2. Wariancje i kowariancja. Var(b1) i var(b3) to kwadraty błędów standardowych. Kowariancję cov(b1, b3) trzeba odczytać z macierzy kowariancji współczynników. W R zwraca ją vcov(model), a w SPSS opcja Covariance matrix w oknie Statistics regresji liniowej. Bez kowariancji błąd standardowy efektu warunkowego wychodzi błędnie.
  3. Stopnie swobody. W modelu z X, W i iloczynem to N − 4. Każda dodatkowa zmienna kontrolna odejmuje jeden stopień swobody.
  4. Moderator. Podaj średnią i SD moderatora na tej skali, na której wszedł do modelu. Jeśli go wycentrowałeś, wpisz średnią 0, a zakres i dodatkowe wartości też w odchyleniach od średniej. Najmniejsza i największa obserwowana wartość W wyznaczają oś wykresu i pozwalają ocenić, czy granica leży w danych.

Wynik to tabela efektów prostych przy M − 1 SD, M, M + 1 SD i przy Twoich wartościach W, granice Johnsona–Neymana z opisem, wykres efektu warunkowego z pasmem ufności i gotowe zdanie do pracy. Wykres możesz pobrać jako plik SVG.

Wzory

W modelu z interakcją nachylenie X nie jest jedną liczbą. Po przegrupowaniu składników Y = (b0 + b2W) + (b1 + b3W)X widać, że efekt X zależy od W. Proste nachylenie, czyli efekt warunkowy X przy wybranym W, ma postać (Aiken i West, 1991):

θ(W) = b1 + b3W

Jego błąd standardowy wynika z wariancji sumy dwóch skorelowanych oszacowań:

SE(θ) = √[var(b1) + 2W·cov(b1, b3) + W²·var(b3)]

Statystyka t = θ / SE ma rozkład t o stopniach swobody reszt, a przedział ufności to θ ± tkryt · SE. Tak liczą proste nachylenia narzędzia opisane przez Preachera i in. (2006) oraz makra Hayesa i Matthesa (2009).

Technika Johnsona–Neymana (Johnson i Neyman, 1936) odwraca pytanie: szuka takich W, przy których |t| równa się wartości krytycznej. Po podniesieniu obu stron do kwadratu dostajemy równanie kwadratowe względem W (Bauer i Curran, 2005):

AW² + BW + C = 0
A = b3² − t²krytvar(b3),   B = 2[b1b3 − t²krytcov(b1, b3)],   C = b1² − t²krytvar(b1)

Efekt X jest istotny tam, gdzie lewa strona jest dodatnia. Znak A ma prostą interpretację: A > 0 dokładnie wtedy, gdy interakcja jest istotna na tym samym poziomie α. Stąd trzy możliwe układy:

Możliwe rozwiązania równania Johnsona–Neymana
SytuacjaLiczba granicGdzie efekt X jest istotny
Interakcja istotna (A > 0)zawsze dwieponiżej dolnej i powyżej górnej granicy; między nimi nachylenie przechodzi przez zero
Interakcja nieistotna (A < 0), Δ = B² − 4AC > 0dwietylko między granicami
Interakcja nieistotna, Δ ≤ 0braknigdzie
Przypadek graniczny A = 0 (|t| dla b3 równe tkryt)jednapo jednej stronie granicy

W praktyce „jedna granica” prawie zawsze oznacza co innego: dwie granice, z których tylko jedna leży w zakresie danych. Kalkulator dlatego osobno podaje, ile granic mieści się między najmniejszym a największym obserwowanym W.

Przykład liczbowy

Zespół bada, czy uważność (skala 1–6) osłabia związek ruminacji (0–40 punktów) z nasileniem objawów depresji u 240 dorosłych (dane symulowane). Model oszacowano bez centrowania. Wszystkie liczby poniżej pochodzą z kodu R w następnej sekcji i są wpisane domyślnie w kalkulator.

Interakcja była ujemna i istotna: b3 = −0.14, SE = 0.05, t(236) = −2.59, p = .010. Im wyższa uważność, tym słabszy związek ruminacji z objawami. Uwaga na b1 = 0.83: to efekt ruminacji przy uważności równej 0, czyli poza skalą. Brambor i in. (2006) w przeglądzie czasopism politologicznych pokazali, że modele z iloczynem są często wykonywane z błędami, a ich listę zasad spełniało tylko 10% artykułów. Odczytywanie b1 jak efektu „ogólnego” to jeden z takich błędów.

Efekty proste ruminacji przy wybranych wartościach uważności
Uważność WEfekt ruminacjiSE95% CIt(236)p
2.79 (M − 1 SD)0.4400.053[0.335, 0.545]8.24< .001
3.53 (M)0.3360.043[0.251, 0.420]7.81< .001
4.28 (M + 1 SD)0.2310.064[0.105, 0.357]3.62< .001
2 (punkt skali)0.5500.086[0.380, 0.719]6.38< .001
5 (punkt skali)0.1310.096[−0.059, 0.321]1.36.175

Przy niskiej uważności każdy punkt ruminacji wiąże się z objawami wyższymi o 0.44 punktu, przy wysokiej – o 0.23. Wszystkie trzy nachylenia w punktach ±1 SD są istotne, więc wartości umowne nie pokazują, gdzie efekt zanika. Pokazują to dopiero punkty skali i technika Johnsona–Neymana.

Granice wyniosły 4.748 i 14.164. Górna leży daleko poza skalą 1–6, więc w danych działa tylko dolna. Efekt ruminacji jest istotny dla uważności poniżej 4.748, czyli 1.62 SD powyżej średniej. Dotyczy to 94.2% badanych. Od 4.748 do najwyższej obserwowanej wartości 5.54 efekt nie jest istotny. Te same granice zwraca funkcja johnson_neyman() z pakietu interactions.

Przykład reprodukowalny

Ten sam przykład w R

Kod symuluje dane, dopasowuje model z interakcją, wypisuje liczby do kalkulatora, efekty proste i granice Johnsona–Neymana.

Efekty proste i przedział Johnsona–Neymana w pakiecie interactions

Dane wejściowe: ruminacja (0–40), uważność (1–6) i objawy depresji u 240 osób (dane symulowane, set.seed(1717)); model lm(depr ~ rumin * uwaz) bez centrowania.

Co odczytać: współczynniki i elementy macierzy vcov() do wpisania w kalkulator, test interakcji, efekty proste z 95% CI, granice Johnsona–Neymana, ich odległość od średniej w SD i odsetek osób w obszarze istotności.

R
library(interactions)
set.seed(1717)
n <- 240                                                       # dorośli z populacji ogólnej
uwaz  <- pmin(pmax(round(rnorm(n, 3.6, 0.8), 2), 1), 6)        # uważność (średnia pozycji, 1–6)
rumin <- pmin(pmax(round(rnorm(n, 22, 7)), 0), 40)             # ruminacja (suma punktów, 0–40)
depr  <- 9 + 0.30 * (rumin - 22) - 1.2 * (uwaz - 3.6) -
         0.12 * (rumin - 22) * (uwaz - 3.6) + rnorm(n, 0, 4)   # nasilenie objawów depresji
m <- lm(depr ~ rumin * uwaz)                                   # model bez centrowania

# 1. Liczby do wpisania w kalkulator
b <- coef(m); V <- vcov(m)
signif(c(b0 = b[[1]], b1 = b[["rumin"]], b2 = b[["uwaz"]], b3 = b[["rumin:uwaz"]]), 6)
signif(c(var_b1 = V["rumin", "rumin"], var_b3 = V["rumin:uwaz", "rumin:uwaz"],
         cov_b1_b3 = V["rumin", "rumin:uwaz"]), 6)
c(df_reszt = df.residual(m), M_W = mean(uwaz), SD_W = sd(uwaz), min_W = min(uwaz), max_W = max(uwaz))

# 2. Test interakcji
round(summary(m)$coefficients["rumin:uwaz", ], 4)

# 3. Efekty proste ruminacji przy M − 1 SD, M i M + 1 SD uważności
ss <- sim_slopes(m, pred = rumin, modx = uwaz, johnson_neyman = FALSE, confint = TRUE)
round(ss$slopes, 4)
ss_pkt <- sim_slopes(m, pred = rumin, modx = uwaz, modx.values = c(2, 3, 4, 5),
                     johnson_neyman = FALSE, confint = TRUE)  # punkty skali odpowiedzi
round(ss_pkt$slopes, 4)

# 4. Przedział Johnsona–Neymana i odsetek osób, u których efekt jest istotny
jn <- johnson_neyman(m, pred = rumin, modx = uwaz, plot = FALSE)
round(jn$bounds, 3)
round((jn$bounds - mean(uwaz)) / sd(uwaz), 2)  # granice w jednostkach SD od średniej
round(100 * mean(uwaz < jn$bounds[["Lower"]]), 1)  # % osób w obszarze istotności
Wynik w R
       b0        b1        b2        b3
-6.761730  0.828616  2.237560 -0.139488
     var_b1      var_b3   cov_b1_b3
 0.03520990  0.00290601 -0.00985534
   df_reszt         M_W        SD_W       min_W       max_W
236.0000000   3.5337083   0.7476015   1.3900000   5.5400000
  Estimate Std. Error    t value   Pr(>|t|)
   -0.1395     0.0539    -2.5875     0.0103
  Value of uwaz   Est.   S.E.   2.5%  97.5% t val.     p
1        2.7861 0.4400 0.0534 0.3348 0.5452 8.2397 0e+00
2        3.5337 0.3357 0.0430 0.2511 0.4203 7.8140 0e+00
3        4.2813 0.2314 0.0639 0.1055 0.3574 3.6194 4e-04
  Value of uwaz   Est.   S.E.    2.5%  97.5% t val.      p
1             2 0.5496 0.0861  0.3800 0.7193 6.3840 0.0000
2             3 0.4102 0.0472  0.3171 0.5032 8.6817 0.0000
3             4 0.2707 0.0535  0.1652 0.3761 5.0582 0.0000
4             5 0.1312 0.0965 -0.0589 0.3212 1.3598 0.1752
 Lower Higher
 4.748 14.164
 Lower Higher
  1.62  14.22
[1] 94.2

Bibliografia oprogramowania

Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (pakiet interactions oraz funkcje lm() i vcov() z pakietu stats). Zgodność kalkulatora z R sprawdzono na 57 przypadkach testowych: efekty proste porównano z sim_slopes() i z emtrends() z pakietu emmeans, a granice – z johnson_neyman(), także przy α = .10 i .01. Największa różnica wyniosła 3 × 10⁻¹³.

  1. R: R Core Team. (2026). R: A language and environment for statistical computing (Version 4.5.3) [Computer software]. R Foundation for Statistical Computing. https://www.R-project.org/
  2. interactions (wersja 1.2.0): Long, J. A. (2024). interactions: Comprehensive, user-friendly toolkit for probing interactions (Version 1.2.0) [R package]. The Comprehensive R Archive Network (CRAN). https://doi.org/10.32614/CRAN.package.interactions
  3. emmeans (wersja 2.0.2): Lenth, R. V., & Piaskowski, J. (2026). emmeans: Estimated marginal means, aka least-squares means (Version 2.0.2) [R package]. The Comprehensive R Archive Network (CRAN). https://doi.org/10.32614/CRAN.package.emmeans

Jak interpretować wynik

Najpierw test interakcji, potem sondowanie. O moderacji świadczy test b3. Efekty proste i granice opisują jej kształt, ale jej nie dowodzą. To, że efekt jest istotny przy niskim W, a nieistotny przy wysokim, nie jest testem różnicy między nachyleniami. Ten sam błąd przy porównywaniu grup opisuje wpis o tym, jak porównać regresję w dwóch grupach.

  • Spotlight czy floodlight? Spiller i in. (2013) zalecają efekty proste („spotlight”) przy wartościach moderatora ważnych merytorycznie, a gdy takich nie ma – zakresy istotności techniką Johnsona–Neymana („floodlight”). Wartości ±1 SD zależą od tego, kogo akurat zbadano. W przykładzie wszystkie trzy były istotne, choć przy uważności 5 efekt już nie był.
  • Interpretuj tylko obserwowany zakres. Granica 14.164 to wynik rachunku, nie obserwacja. Podawaj granice z zakresu danych i odsetek osób w obszarze istotności. Preacher i in. (2006) opisują obszary istotności razem z pasmami ufności prostych nachyleń w całym zakresie moderatora – tak jak na wykresie z kalkulatora.
  • Brak istotności to nie brak efektu. Przy uważności 5 przedział ufności sięga od −0.059 do 0.321. Dane są zgodne zarówno z brakiem związku, jak i z umiarkowanym związkiem dodatnim. Jak to opisać, pokazuje wpis o tym, jak opisać wynik nieistotny.
  • Granica zależy od liczebności i α. W większej próbie przedziały się zwężają i obszar istotności się poszerza, choć sam efekt jest taki sam. Granica nie jest więc „progiem” w sensie teoretycznym.
  • Wiele testów naraz. Pasmo z kalkulatora to przedziały punktowe: każdy dotyczy jednej wartości W. Esarey i Sumner (2018) pokazali, że przy takim sondowaniu odsetek fałszywie istotnych wyników może być wielokrotnie większy albo mniejszy niż nominalne α. W R poprawkę według tych autorów włącza argument control.fdr = TRUE funkcji johnson_neyman(). Szerzej o tym problemie piszemy w haśle o problemie wielokrotnych porównań.

Kształt interakcji najlepiej pokazać dwoma rysunkami: klasycznym wykresem interakcji z prostymi regresji dla kilku wartości W i wykresem efektu warunkowego z kalkulatora. Pierwszy pokazuje przewidywane wyniki, drugi – nachylenie i jego niepewność w całym zakresie moderatora.

Ograniczenia

  • Jeden iloczyn, model liniowy. Kalkulator obsługuje model z jedną interakcją dwóch zmiennych. Zmienne kontrolne mogą być w modelu (zmniejszają tylko df). Nie obsługuje interakcji trójczynnikowych, składników kwadratowych ani kilku iloczynów z tym samym X.
  • Regresja logistyczna i modele wielopoziomowe. Wzory działają na skali współczynników, np. logitu. Hayes i Matthes (2009) opisują sondowanie interakcji w regresji MNK i logistycznej, a Bauer i Curran (2005) – w modelach wielopoziomowych. W modelu logistycznym wpisz bardzo duże df (np. 100000), by uzyskać wartość krytyczną z rozkładu normalnego. W modelu wielopoziomowym wybór df jest osobnym problemem.
  • Precyzja danych wejściowych. Programy często wypisują macierz kowariancji z trzema miejscami po przecinku. Przy małych wariancjach to za mało: przepisuj co najmniej 4–6 cyfr znaczących. W przykładzie zaokrąglenie danych do 6 cyfr znaczących przesunęło dolną granicę dopiero na piątym miejscu po przecinku (4.747637 i 4.747632).
  • Błędy standardowe odporne. Jeśli w modelu użyłeś błędów odpornych na heteroskedastyczność, wpisz wariancje i kowariancję z odpornej macierzy kowariancji, a nie z klasycznej.
  • Moderator dychotomiczny. Gdy W przyjmuje tylko wartości 0 i 1, granice nie mają sensu. Wystarczą dwa efekty proste przy W = 0 i W = 1. Jeśli zastanawiasz się, czy Twoja próba wystarczy do wykrycia interakcji, sprawdź kalkulator mocy dla regresji i interakcji.

Zapis w pracy (APA)

Podaj test interakcji z b, SE, t i p, efekty proste z 95% CI przy jawnie podanych wartościach moderatora oraz granice Johnsona–Neymana z zakresem danych. Współczynniki niestandaryzowane zapisuj z zerem wiodącym, a p bez zera. Pełny model warto pokazać w tabeli regresji w stylu APA, a wartość p z dowolnej statystyki t sprawdzisz w kalkulatorze wartości p.

Interakcja ruminacji i uważności była istotna, b = −0.14, SE = 0.05, t(236) = −2.59, p = .010. Efekt ruminacji na nasilenie objawów depresji był najsilniejszy przy niskiej uważności (M − 1 SD = 2.79; b = 0.44, 95% CI [0.33, 0.55], p < .001), słabszy przy przeciętnej (M = 3.53; b = 0.34, 95% CI [0.25, 0.42], p < .001) i najsłabszy przy wysokiej (M + 1 SD = 4.28; b = 0.23, 95% CI [0.11, 0.36], p < .001). Według techniki Johnsona–Neymana efekt ruminacji był istotny dla uważności poniżej 4.75 (94.2% badanych), a nieistotny od 4.75 do najwyższej obserwowanej wartości 5.54; druga granica (14.16) leżała poza zakresem skali.

Gdy moderator wchodzi do modelu z mediacją, efekty warunkowe dotyczą efektu pośredniego i liczy się je bootstrapem – pokazujemy to we wpisie o moderowanej mediacji i modelach PROCESS w R. Jeśli przygotowujesz artykuł z analizą moderacji i chcesz, żeby ktoś sprawdził model i opis, zajrzyj do oferty analiz dla badaczy.

Najczęstsze pytania

Skąd wziąć kowariancję b1 i b3 potrzebną do efektów prostych?

Z macierzy kowariancji współczynników modelu. W R zwraca ją vcov(model): kowariancja to element w wierszu predyktora X i kolumnie iloczynu. W SPSS zaznacz Covariance matrix w oknie Statistics regresji liniowej, a w Stata użyj estat vce. Wariancje na przekątnej to kwadraty błędów standardowych.

Czy da się policzyć efekty proste, znając tylko błędy standardowe współczynników?

Nie dokładnie. Błąd standardowy efektu warunkowego zawiera składnik 2W·cov(b1, b3), a w modelu bez centrowania kowariancja bywa duża i ujemna. Pominięcie jej zawyża albo zaniża SE, zależnie od znaku W. Bez macierzy kowariancji wycentruj moderator na wybranej wartości i dopasuj model ponownie: b1 i jego SE są wtedy efektem prostym w tym punkcie.

Czy granice Johnsona–Neymana zmieniają się po wycentrowaniu moderatora?

Nie w sensie merytorycznym. Centrowanie przesuwa zero na skali W, więc granice liczone dla wycentrowanego moderatora różnią się od granic na skali surowej dokładnie o średnią. Obszar istotności obejmuje tych samych badanych. Pilnuj tylko, by średnią, zakres i wybrane wartości W wpisać na tej samej skali, na której moderator wszedł do modelu.

Czy przedział Johnsona–Neymana może mieć tylko jedną granicę?

Matematycznie tylko w przypadku granicznym, gdy statystyka t interakcji równa się dokładnie wartości krytycznej. Przy istotnej interakcji równanie ma zawsze dwa pierwiastki, przy nieistotnej – dwa albo żaden. Jedna granica w raporcie zwykle oznacza, że druga leży poza zakresem moderatora, jak w przykładzie: 4.748 w danych i 14.164 poza skalą 1–6.

Czy kalkulator nadaje się do regresji logistycznej lub modelu wielopoziomowego?

Tak, jeśli interakcja dotyczy dwóch zmiennych, a wyniki interpretujesz na skali współczynników, np. logitu. Hayes i Matthes (2009) opisują sondowanie interakcji także w regresji logistycznej. Wpisz wtedy bardzo duże df, np. 100000, by wartość krytyczna pochodziła praktycznie z rozkładu normalnego. W modelu wielopoziomowym podaj df zgodne z metodą użytą w programie; uogólnienie techniki na takie modele opisują Bauer i Curran (2005).

Powiązane hasła

Przeczytaj też

Recenzent pyta, przy jakich wartościach moderatora efekt jest istotny?

Pomożemy oszacować i zsondować interakcję, przygotować wykres efektu warunkowego z pasmem ufności i opisać moderację tak, żebyś mógł(a) obronić ją przed recenzentami.

Oferta dla badaczyPorozmawiaj o projekcie

Bibliografia i dalsza literatura naukowa (APA 7)

  1. Aiken, L. S., & West, S. G. (1991). Multiple regression: Testing and interpreting interactions. Sage.
  2. Bauer, D. J., & Curran, P. J. (2005). Probing interactions in fixed and multilevel regression: Inferential and graphical techniques. Multivariate Behavioral Research, 40(3), 373–400. https://doi.org/10.1207/s15327906mbr4003_5 ● Otwarty dostęp
  3. Brambor, T., Clark, W. R., & Golder, M. (2006). Understanding interaction models: Improving empirical analyses. Political Analysis, 14(1), 63–82. https://doi.org/10.1093/pan/mpi014
  4. Esarey, J., & Sumner, J. L. (2018). Marginal effects in interaction models: Determining and controlling the false positive rate. Comparative Political Studies, 51(9), 1144–1176. https://doi.org/10.1177/0010414017730080
  5. Hayes, A. F., & Matthes, J. (2009). Computational procedures for probing interactions in OLS and logistic regression: SPSS and SAS implementations. Behavior Research Methods, 41(3), 924–936. https://doi.org/10.3758/brm.41.3.924 ● Otwarty dostęp: pełny tekst
  6. Johnson, P. O., & Neyman, J. (1936). Tests of certain linear hypotheses and their application to some educational problems. Statistical Research Memoirs, 1, 57–93.
  7. Preacher, K. J., Curran, P. J., & Bauer, D. J. (2006). Computational tools for probing interactions in multiple linear regression, multilevel modeling, and latent curve analysis. Journal of Educational and Behavioral Statistics, 31(4), 437–448. https://doi.org/10.3102/10769986031004437 ● Otwarty dostęp: pełny tekst
  8. Spiller, S. A., Fitzsimons, G. J., Lynch, J. G., Jr., & McClelland, G. H. (2013). Spotlights, floodlights, and the magic number zero: Simple effects tests in moderated regression. Journal of Marketing Research, 50(2), 277–288. https://doi.org/10.1509/jmr.12.0420

Cytowania BibTeX

@book{aiken1991multiple, author={Aiken, Leona S. and West, Stephen G.}, title={{Multiple regression: Testing and interpreting interactions}}, year={1991}, publisher={Sage}}
@article{bauer2005probing, author={Bauer, Daniel J. and Curran, Patrick J.}, title={{Probing interactions in fixed and multilevel regression: Inferential and graphical techniques}}, journal={Multivariate Behavioral Research}, year={2005}, volume={40}, number={3}, pages={373--400}, doi={10.1207/s15327906mbr4003_5}}
@article{brambor2006understanding, author={Brambor, Thomas and Clark, William Roberts and Golder, Matt}, title={{Understanding interaction models: Improving empirical analyses}}, journal={Political Analysis}, year={2006}, volume={14}, number={1}, pages={63--82}, doi={10.1093/pan/mpi014}}
@article{esarey2018marginal, author={Esarey, Justin and Sumner, Jane Lawrence}, title={{Marginal effects in interaction models: Determining and controlling the false positive rate}}, journal={Comparative Political Studies}, year={2018}, volume={51}, number={9}, pages={1144--1176}, doi={10.1177/0010414017730080}}
@article{hayes2009computational, author={Hayes, Andrew F. and Matthes, Jörg}, title={{Computational procedures for probing interactions in OLS and logistic regression: SPSS and SAS implementations}}, journal={Behavior Research Methods}, year={2009}, volume={41}, number={3}, pages={924--936}, doi={10.3758/brm.41.3.924}}
@article{johnson1936tests, author={Johnson, Palmer O. and Neyman, Jerzy}, title={{Tests of certain linear hypotheses and their application to some educational problems}}, journal={Statistical Research Memoirs}, year={1936}, volume={1}, pages={57--93}}
@article{preacher2006computational, author={Preacher, Kristopher J. and Curran, Patrick J. and Bauer, Daniel J.}, title={{Computational tools for probing interactions in multiple linear regression, multilevel modeling, and latent curve analysis}}, journal={Journal of Educational and Behavioral Statistics}, year={2006}, volume={31}, number={4}, pages={437--448}, doi={10.3102/10769986031004437}}
@article{spiller2013spotlights, author={Spiller, Stephen A. and Fitzsimons, Gavan J. and Lynch, Jr., John G. and McClelland, Gary H.}, title={{Spotlights, floodlights, and the magic number zero: Simple effects tests in moderated regression}}, journal={Journal of Marketing Research}, year={2013}, volume={50}, number={2}, pages={277--288}, doi={10.1509/jmr.12.0420}}
R