From ebeaafdb52caa5f0ed2ff0984e8b8c97072f1882 Mon Sep 17 00:00:00 2001 From: rempsyc Date: Wed, 4 Oct 2023 17:38:46 -0400 Subject: [PATCH] addresses #636 tidyverse --- DESCRIPTION | 3 ++ papers/JOSE/paper.Rmd | 5 +- papers/JOSE/paper.log | 20 +++---- papers/JOSE/paper.md | 4 +- papers/JOSE/paper.pdf | Bin 214432 -> 215353 bytes .../paper_files/figure-latex/model_fig-1.pdf | Bin 8483 -> 8482 bytes vignettes/check_outliers.Rmd | 51 +++++++++++------- 7 files changed, 46 insertions(+), 37 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 933df479a..99ec823a7 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -93,7 +93,9 @@ Suggests: dbscan, estimatr, fixest, + flextable, forecast, + ftExtra, gamm4, ggplot2, glmmTMB, @@ -128,6 +130,7 @@ Suggests: psych, qqplotr (>= 0.0.6), randomForest, + rempsyc, rmarkdown, rstanarm, rstantools, diff --git a/papers/JOSE/paper.Rmd b/papers/JOSE/paper.Rmd index 5e8409178..e8403d389 100644 --- a/papers/JOSE/paper.Rmd +++ b/papers/JOSE/paper.Rmd @@ -187,7 +187,7 @@ Working with regression models creates the possibility of using model-based SOD In {performance}, two such model-based SOD methods are currently available: Cook's distance, for regular regression models, and Pareto, for Bayesian models. As such, `check_outliers()` can be applied directly on regression model objects, by simply specifying `method = "cook"` (or `method = "pareto"` for Bayesian models).^[Our default threshold for the Cook method is defined by `stats::qf(0.5, ncol(x), nrow(x) - ncol(x))`, which again is an approximation of the critical value for _p_ < .001 consistent with the thresholds of our other methods.] -Currently, most lm models are supported (with the exception of `glmmTMB`, `lmrob`, and `glmrob` models), as long as they are supported by the underlying functions `stats::cooks.distance()` (or `loo::pareto_k_values()`) and `insight::get_data()` (for a full list of the 225 models currently supported by the `insight` package, see https://easystats.github.io/insight/#list-of-supported-models-by-class). We show a demo below. +Currently, most lm models are supported (with the exception of `glmmTMB`, `lmrob`, and `glmrob` models), as long as they are supported by the underlying functions `stats::cooks.distance()` (or `loo::pareto_k_values()`) and `insight::get_data()` (for a full list of the 225 models currently supported by the `insight` package, see https://easystats.github.io/insight/#list-of-supported-models-by-class). Also note that although `check_outliers()` supports the pipe operators (`|>` or `%>%`), it does not support `tidymodels` at this time. We show a demo below. ```{r model} model <- lm(disp ~ mpg * disp, data = data) @@ -228,7 +228,6 @@ _Summary of Statistical Outlier Detection Methods Recommendations_ ```{r table1_print, echo=FALSE, message=FALSE} x <- flextable::flextable(df, cwidth = 1.25) x <- flextable::theme_apa(x) -# x <- flextable::align(x, align = "left", part = "all") x <- flextable::font(x, fontname = "Latin Modern Roman", part = "all") x <- flextable::fontsize(x, size = 10, part = "all") ftExtra::colformat_md(x) @@ -238,7 +237,7 @@ ftExtra::colformat_md(x) All `check_outliers()` output objects possess a `plot()` method, meaning it is also possible to visualize the outliers using the generic `plot()` function on the resulting outlier object after loading the {see} package (Figure 1). ```{r model_fig, fig.cap = "Visual depiction of outliers based on Cook's distance (leverage and standardized residuals), based on the fitted model."} -plot(outliers) +plot(outliers) # Figure 1 above ``` ## Cook's Distance vs. MCD diff --git a/papers/JOSE/paper.log b/papers/JOSE/paper.log index 231a93157..c09bc9e1c 100644 --- a/papers/JOSE/paper.log +++ b/papers/JOSE/paper.log @@ -1,4 +1,4 @@ -This is XeTeX, Version 3.141592653-2.6-0.999995 (TeX Live 2023) (preloaded format=xelatex 2023.10.4) 4 OCT 2023 16:57 +This is XeTeX, Version 3.141592653-2.6-0.999995 (TeX Live 2023) (preloaded format=xelatex 2023.10.4) 4 OCT 2023 17:36 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -1177,10 +1177,6 @@ Package fancyhdr Warning: \headheight is too small (62.59596pt): (fancyhdr) \addtolength{\topmargin}{-1.71957pt}. [4] -Underfull \hbox (badness 1331) in paragraph at lines 628--636 -[][]$[][][][][] [] [] [] [][][][][][][][][] [] [][][][][][] [] [][] [] [][][][][][][] [] [][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]$[][]\TU/lmr/m/n/10 ). We show a - [] - Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. @@ -1222,7 +1218,7 @@ Package fontspec Info: Font family 'LatinModernRoman(0)' created for font (fontspec) - 'bold italic small caps' (b/scit) with NFSS spec.: LaTeX Font Info: Font shape `TU/LatinModernRoman(0)/m/n' will be -(Font) scaled to size 10.0pt on input line 680. +(Font) scaled to size 10.0pt on input line 683. Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. @@ -1263,7 +1259,7 @@ Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. LaTeX Font Info: Font shape `TU/LatinModernRoman(0)/b/n' will be -(Font) scaled to size 9.70718pt on input line 692. +(Font) scaled to size 9.70718pt on input line 695. Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. @@ -1307,7 +1303,7 @@ Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. LaTeX Font Info: Font shape `TU/LatinModernRoman(0)/m/it' will be -(Font) scaled to size 10.0pt on input line 692. +(Font) scaled to size 10.0pt on input line 695. Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. @@ -1387,7 +1383,7 @@ Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. Package fontspec Info: Latin Modern Roman scale = 0.9999964596882403. -Overfull \hbox (4.64252pt too wide) in paragraph at lines 692--692 +Overfull \hbox (4.64252pt too wide) in paragraph at lines 695--695 []|[]\TU/LatinModernRoman(0)/m/it/10 check_outliers(model,[][] [] @@ -1745,17 +1741,17 @@ Package fancyhdr Warning: \headheight is too small (62.59596pt): (fancyhdr) \addtolength{\topmargin}{-1.71957pt}. [8] -Underfull \hbox (badness 1584) in paragraph at lines 995--1001 +Underfull \hbox (badness 1584) in paragraph at lines 998--1004 []\TU/lmr/m/n/10 Simmons, J. P., Nelson, L. D., & Simonsohn, U. (2011). False-positive psy- [] -Underfull \hbox (badness 3049) in paragraph at lines 995--1001 +Underfull \hbox (badness 3049) in paragraph at lines 998--1004 \TU/lmr/m/n/10 chology: Undisclosed flexibility in data collection and analysis allows pre- [] -Underfull \hbox (badness 3735) in paragraph at lines 995--1001 +Underfull \hbox (badness 3735) in paragraph at lines 998--1004 \TU/lmr/m/n/10 senting anything as significant. \TU/lmr/m/it/10 Psychological Science\TU/lmr/m/n/10 , \TU/lmr/m/it/10 22\TU/lmr/m/n/10 (11), 1359–1366. [] diff --git a/papers/JOSE/paper.md b/papers/JOSE/paper.md index dbc12fd66..b4d317156 100644 --- a/papers/JOSE/paper.md +++ b/papers/JOSE/paper.md @@ -218,7 +218,7 @@ Working with regression models creates the possibility of using model-based SOD In {performance}, two such model-based SOD methods are currently available: Cook's distance, for regular regression models, and Pareto, for Bayesian models. As such, `check_outliers()` can be applied directly on regression model objects, by simply specifying `method = "cook"` (or `method = "pareto"` for Bayesian models).^[Our default threshold for the Cook method is defined by `stats::qf(0.5, ncol(x), nrow(x) - ncol(x))`, which again is an approximation of the critical value for _p_ < .001 consistent with the thresholds of our other methods.] -Currently, most lm models are supported (with the exception of `glmmTMB`, `lmrob`, and `glmrob` models), as long as they are supported by the underlying functions `stats::cooks.distance()` (or `loo::pareto_k_values()`) and `insight::get_data()` (for a full list of the 225 models currently supported by the `insight` package, see https://easystats.github.io/insight/#list-of-supported-models-by-class). We show a demo below. +Currently, most lm models are supported (with the exception of `glmmTMB`, `lmrob`, and `glmrob` models), as long as they are supported by the underlying functions `stats::cooks.distance()` (or `loo::pareto_k_values()`) and `insight::get_data()` (for a full list of the 225 models currently supported by the `insight` package, see https://easystats.github.io/insight/#list-of-supported-models-by-class). Also note that although `check_outliers()` supports the pipe operators (`|>` or `%>%`), it does not support `tidymodels` at this time. We show a demo below. ```r @@ -310,7 +310,7 @@ All `check_outliers()` output objects possess a `plot()` method, meaning it is a ```r -plot(outliers) +plot(outliers) # Figure 1 above ``` \begin{figure} diff --git a/papers/JOSE/paper.pdf b/papers/JOSE/paper.pdf index dbd0311a24301cea4b04d4321693d7ce924986d6..00101a8f5af1109d7289b8fd5f3243089e0bba7c 100644 GIT binary patch delta 34161 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 diff --git a/papers/JOSE/paper_files/figure-latex/model_fig-1.pdf b/papers/JOSE/paper_files/figure-latex/model_fig-1.pdf index f382fd5284d0e63cb6a714a077c1e2ed48f95236..50cb86db5a88f47425c7ad15487aaae1d892f553 100644 GIT binary patch delta 1245 zcmZ4Nw8&|LF%zS~L>|yz=eJM0Prr||oBD5CzhIqX z)ufe&lD$GE3G=>Ox$aW^yx$L6OE2x#G&ue};n?S*YdbW%{oj3)yR+$7foQW_$LUFP ztq<)I_#VOeAidXRg;}NbLjM(<$6C%_aW~x2ad?4@?}51cOp$?0uU!%NBFQqLY54gp zd3wsP5|o>{K;80d$@;Jwm6e;<&b=PWY5LRP&ZI{f5?#*^ADX)_Ty<+z!mis>+FR}S zCi(7+u3tOn;nQg2p6q{T7V$=`KgIey<)PHCXKxy|craQi;b zrT5K4KNjUI*IntmTLp}LYc1y;I#%%Kkj^5WzX2}1PDy6Xvu`y&d8T>(@A{f&e+3sA z9_W0Y$*t>iS|C_}y=F=#=OezynH+1Q*Ew5%xUepb;kd;zQH7|hnJkmI3$9;b`*6l) z8RrA1rxv;nB0cqQO&S9CPL(#@B{ezszrpj&-S%h7Z$IOYj=o*pXgV+2{tdIq?VpD~ z%iaBP_|S~EyAN#4*?lH(veDhrJ2g*>FB{gxo6VJ9t~2|b_u~yYyClv=n9J7xx?S_> zGS4^JJ!$J^UGM07wo64}|L*ri-;NxuKJ;((zHM7dYJRE}7M%F}J$8S+=bZU_x2nf~ zUi&z9?SnskLAySA?*~dS1#IY!+?cxN2>W|M$4P02r?$78{;_Y5r_izmd%j-JIgr2M zLs+h6&8`po53-5W?NI3Sf05Speq)yfm6zqu@wsaSN=C)pe|z)o_wz*`zP;(r&)a@}p6&md z>Ype3pM5Vo*elPx>p}YceYu&(Ow|>Ogf`CT6JRj`ehax zI((UT|L(WFuTp1I{rA7xZ-M(A<_S}uL?TFicdv<>Q_Sx6@^W*-1_*?e< z)x&Rvw+{bb7hkm~e%7zli=kR+uf88|U;n;tM{ULDSKYhcu8+4nWMv<*=4-e4`Z)VN zv8(0(?*1eG_@w{T$-08(tmejMCT5e*$%#W)n_C5KdBIG}$;aj7psZJNGZ;-KH_Kbq zn_DUvfPg}t0vDKJU}9ouf+1#VYK9?ZW@?NnW@(NgW^RJ1&fLNRtj-(RVhbZog_edG z2ATuCh;E6wxrN!}b_KgQXE#@Kb7u>4H&a(rH%9|AV@C^DGiOIPQ!@i6LnlXPI|Unp fN@5l4?6`_c5{pVIic-_KEDQ|HxKveL{oS|#8lE;L delta 1246 zcmZ4FwAg8bF%zTVL>zt4rqbE|nM#wS}dy{i8|CHQnnAWh*kmjT@3>E^`U2ePzOQl66OR7IQ_K++~)6 zg++736u6F+)k_^%aqm>GRBZ3bZS^xgZ@DY~Y=3DH8h;6aYR(Q^QXO*|_)6SO?`}Aj@>kpph`+R9(gjsA)+M3yY_J4EjerB@$ z=8H29Kb!61-YH#RCp6*y-Ezz7M~`e1|A)p$M_KKwnQUS4TM!+u|Mu7Fmu_*OgM7fX@|glb*^xm{55x8+Ma7^R~ag7hlY+F8lqrIIyDn+fnoFx6{whtKYZx z&lC60)w>@Y>t~GpusQ$!Hj~G*CJR`0M)v`jUEt@KKo>;zVzHR;O zus^F(BkwY+NOW6W^4Zc9kn%Iuky#=vHdqk_0JTkgDJn?@4jIlEF&V8 z)&B0^{dxI9_Vf1Eef{vPu=>xpul(ilx$*b%*2}r9zy0>?_U*UNzHT>PU;m?SclFnT z-xhBl)?e4Ry{PZ|chd_kQRA<_A0NJ6ZhyyaPvzI6cfVcNmrtB4uXF9!(b?ha4g(X;>H?qYRMwkjM4KWNf zH#f#`jJdgm`Q$bQyEsEfQ)4%CGjk^+Ljw~_6LT{YGZQC6V>3r%Hwyz(H$yuG8-hw= d73}P|ic1oUN-By{)3_`Q49vMyRbBnvxB&DZBXj@& diff --git a/vignettes/check_outliers.Rmd b/vignettes/check_outliers.Rmd index cd3ff33e0..65f6e092e 100644 --- a/vignettes/check_outliers.Rmd +++ b/vignettes/check_outliers.Rmd @@ -27,7 +27,8 @@ knitr::opts_chunk$set( ) options(digits = 2) -pkgs <- c("see", "performance", "datawizard", "rempsyc") +pkgs <- c("see", "performance", "datawizard", "rempsyc", + "ggplot2", "flextable", "ftExtra") successfully_loaded <- vapply(pkgs, requireNamespace, FUN.VALUE = logical(1L), quietly = TRUE) can_evaluate <- all(successfully_loaded) @@ -154,7 +155,7 @@ Working with regression models creates the possibility of using model-based SOD In {performance}, two such model-based SOD methods are currently available: Cook's distance, for regular regression models, and Pareto, for Bayesian models. As such, `check_outliers()` can be applied directly on regression model objects, by simply specifying `method = "cook"` (or `method = "pareto"` for Bayesian models).^[Our default threshold for the Cook method is defined by `stats::qf(0.5, ncol(x), nrow(x) - ncol(x))`, which again is an approximation of the critical value for _p_ < .001 consistent with the thresholds of our other methods.] -Currently, most lm models are supported (with the exception of `glmmTMB`, `lmrob`, and `glmrob` models), as long as they are supported by the underlying functions `stats::cooks.distance()` (or `loo::pareto_k_values()`) and `insight::get_data()` (for a full list of the 225 models currently supported by the `insight` package, see https://easystats.github.io/insight/#list-of-supported-models-by-class). We show a demo below. +Currently, most lm models are supported (with the exception of `glmmTMB`, `lmrob`, and `glmrob` models), as long as they are supported by the underlying functions `stats::cooks.distance()` (or `loo::pareto_k_values()`) and `insight::get_data()` (for a full list of the 225 models currently supported by the `insight` package, see https://easystats.github.io/insight/#list-of-supported-models-by-class). Also note that although `check_outliers()` supports the pipe operators (`|>` or `%>%`), it does not support `tidymodels` at this time. We show a demo below. ```{r model, fig.cap = "Visual depiction of outliers based on Cook's distance (leverage and standardized residuals), based on the fitted model."} model <- lm(disp ~ mpg * disp, data = data) @@ -168,31 +169,41 @@ Using the model-based outlier detection method, we identified a single outlier. Table 1 below summarizes which methods to use in which cases, and with what threshold. The recommended thresholds are the default thresholds. -```{r, echo=FALSE} +```{r table1_prep, echo=FALSE} df <- data.frame( `Statistical Test` = c( - "Supported regression model", - "Structural Equation Modeling (or other unsupported model)", - "Simple test with few variables (*t* test, correlation, etc.)" - ), + "Supported regression model", + "Structural Equation Modeling (or other unsupported model)", + "Simple test with few variables (*t* test, correlation, etc.)"), `Diagnosis Method` = c( - "**Model-based**: Cook (or Pareto for Bayesian models)", - "**Multivariate**: Minimum Covariance Determinant (MCD)", - "**Univariate**: robust *z* scores (MAD)" - ), + "**Model-based**: Cook (or Pareto for Bayesian models)", + "**Multivariate**: Minimum Covariance Determinant (MCD)", + "**Univariate**: robust *z* scores (MAD)"), `Recommended Threshold` = c( - "`qf(0.5, ncol(x), nrow(x) - ncol(x))` (or 0.7 for Pareto)", - "`qchisq(p = 1 - 0.001, df = ncol(x))`", - "`qnorm(p = 1 - 0.001 / 2)`, ~ 3.29" - ) -) -knitr::kable( - df, - col.names = gsub("[.]", " ", names(df)), - caption = "Summary of Statistical Outlier Detection Methods Recommendations.", longtable = TRUE + "_qf(0.5, ncol(x), nrow(x) - ncol(x))_ (or 0.7 for Pareto)", + "_qchisq(p = 1 - 0.001, df = ncol(x))_", + "_qnorm(p = 1 - 0.001 / 2)_, ~ 3.29"), + `Function Usage` = c( + '_check_outliers(model, method = "cook")_', + '_check_outliers(data, method = "mcd")_', + '_check_outliers(data, method = "zscore_robust")_'), + check.names = FALSE ) ``` +### Table 1 + +_Summary of Statistical Outlier Detection Methods Recommendations_ + +```{r table1_print, echo=FALSE, message=FALSE} +x <- flextable::flextable(df, cwidth = 2.25) +x <- flextable::theme_apa(x) +x <- flextable::font(x, fontname = "Latin Modern Roman", part = "all") +# x <- flextable::fontsize(x, size = 10, part = "all") +ftExtra::colformat_md(x) + +``` + ## Cook's Distance vs. MCD @leys2018outliers report a preference for the MCD method over Cook's distance. This is because Cook's distance removes one observation at a time and checks its corresponding influence on the model each time [@cook1977detection], and flags any observation that has a large influence. In the view of these authors, when there are several outliers, the process of removing a single outlier at a time is problematic as the model remains "contaminated" or influenced by other possible outliers in the model, rendering this method suboptimal in the presence of multiple outliers.