scrutiny

Error detection in science

https://github.com/lhdjung/scrutiny

Science Score: 57.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (18.1%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Error detection in science

Basic Info
Statistics
  • Stars: 8
  • Watchers: 1
  • Forks: 2
  • Open Issues: 9
  • Releases: 5
Created over 4 years ago · Last pushed 11 months ago
Metadata Files
Readme Changelog License Code of conduct Citation

README.Rmd

---
output: github_document
link-citations: TRUE
---



```{r, include = FALSE}
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "man/figures/README-",
  out.width = "75%",
  fig.width = 6,
  fig.asp = 7/7.5
)

# Determine ggplot2 theme for the session:
ggplot2::theme_set(ggplot2::theme_minimal())
```



[![R-CMD-check](https://github.com/lhdjung/scrutiny/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/lhdjung/scrutiny/actions/workflows/R-CMD-check.yaml) [![Codecov test coverage](https://codecov.io/gh/lhdjung/scrutiny/branch/main/graph/badge.svg)](https://app.codecov.io/gh/lhdjung/scrutiny?branch=main)



# scrutiny: Error detection in science

The goal of scrutiny is to test published summary statistics for consistency using techniques like GRIM and to check their plausibility. The package makes these methods easy to use in a tidyverse-friendly way. It hopes to help the new field of error detection go mainstream.

You can use the most important parts in the [Error detection](https://errors.shinyapps.io/scrutiny) Shiny app instead.

Besides ready-made tests, scrutiny features a complete system for implementing new consistency tests. It also has duplication analysis, more general infrastructure for implementing error detection techniques, as well as specialized data wrangling functions. See the *Articles* tab for vignettes.

Install the package from CRAN:

```{r warning=FALSE, message=FALSE, eval=FALSE}
install.packages("scrutiny")
```

Alternatively, install the development version from GitHub:

```{r, warning=FALSE, message=FALSE, eval=FALSE}
remotes::install_github("lhdjung/scrutiny")
```

## Get started

Here is how to GRIM-test all values in a data frame. When using `grim_map()`, the `consistency` column tells you if the means (`x`) and sample sizes (`n`) are mutually consistent.

```{r example}
library(scrutiny)

# Example data:
pigs1

# GRIM-testing for data frames:
grim_map(pigs1)
```

Test percentages instead of means:

```{r}
pigs2

grim_map(pigs2, percent = TRUE)
```

You can choose how the means are reconstructed for testing --- below, rounded up from 5. When visualizing results, the plot will adjust automatically. Blue dots are consistent values, red dots are inconsistent ones:

```{r}
pigs1 %>% 
  grim_map(rounding = "up") %>% 
  grim_plot()
```

Similarly, use DEBIT to test means and standard deviations of binary data:

```{r}
pigs3

pigs3 %>% 
  debit_map()

pigs3 %>% 
  debit_map() %>% 
  debit_plot()
```

## Guiding ideas

> (...) a critical inspection of the published literature should not be mischaracterized as a hobby for the overly cynical, nor as so-called "methodological terrorism". On the contrary, carefully evaluating presented data is a cornerstone of scientific investigation, and it is only logical to apply this also to the published literature. If we are not willing to critically assess published studies, we also cannot guarantee their veracity.

--- van der Zee et al. (2017, pp. 8-9)

> (...) [data thugs](https://jamesheathers.medium.com/hugs-shrugs-and-data-thugs-663858757c4a) (...) demand data and if they do not receive it, they contact editors and universities and threaten to write blogs and tweets about the errors uncovered.

--- Eric A. Stewart (six retractions; quoted in Pickett 2020, p. 178)

# References

Pickett, J. T. (2020). The Stewart Retractions: A Quantitative and Qualitative Analysis. *Econ Journal Watch*, *17*(1), 152--190. .

van der Zee, T., Anaya, J., & Brown, N. J. L. (2017). Statistical heartburn: An attempt to digest four pizza publications from the Cornell Food and Brand Lab. *BMC Nutrition*, *3*(1), 54. .

Owner

  • Name: Lukas Jung
  • Login: lhdjung
  • Kind: user
  • Location: Heidelberg, Germany

R developer and master's student at Heidelberg University.

Citation (CITATION.cff)

# -----------------------------------------------------------
# CITATION file created with {cffr} R package, v0.1.1
# See also: https://docs.ropensci.org/cffr/
# -----------------------------------------------------------
 
cff-version: 1.2.0
message: 'To cite package "scrutiny" in publications use:'
type: software
license: GPL-3.0-or-later
title: 'scrutiny: Error Detection in Science'
version: 0.0.0.9000
abstract: Test published summary statistics for consistency and reconstruct some of
  the processes which created them. The package aims to make these methods easy to
  use in a tidyverse-friendly way, helping the new field of error detection go mainstream.
authors:
- family-names: Jung
  given-names: Lukas
  email: jung-lukas@gmx.net
preferred-citation:
  type: manual
  title: 'scrutiny: Error Detection in Science'
  authors:
  - family-names: Jung
    given-names: Lukas
    email: jung-lukas@gmx.net
  version: 0.0.0.9000
  abstract: Test published summary statistics for consistency and reconstruct some
    of the processes which created them. The package aims to make these methods easy
    to use in a tidyverse-friendly way, helping the new field of error detection go
    mainstream.
  repository-code: https://github.com/lhdjung/scrutiny
  url: https://lhdjung.github.io/scrutiny
  contact:
  - family-names: Jung
    given-names: Lukas
    email: jung-lukas@gmx.net
  license: GPL-3.0-or-later
  year: '2021'
repository-code: https://github.com/lhdjung/scrutiny
url: https://lhdjung.github.io/scrutiny
contact:
- family-names: Jung
  given-names: Lukas
  email: jung-lukas@gmx.net

GitHub Events

Total
  • Issues event: 2
  • Watch event: 3
  • Delete event: 1
  • Issue comment event: 3
  • Push event: 25
  • Pull request event: 6
  • Fork event: 2
  • Create event: 4
Last Year
  • Issues event: 2
  • Watch event: 3
  • Delete event: 1
  • Issue comment event: 3
  • Push event: 25
  • Pull request event: 6
  • Fork event: 2
  • Create event: 4

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 36
  • Total pull requests: 41
  • Average time to close issues: 4 months
  • Average time to close pull requests: about 11 hours
  • Total issue authors: 5
  • Total pull request authors: 4
  • Average comments per issue: 0.78
  • Average comments per pull request: 0.2
  • Merged pull requests: 40
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 2
  • Pull requests: 8
  • Average time to close issues: 6 days
  • Average time to close pull requests: 2 days
  • Issue authors: 1
  • Pull request authors: 3
  • Average comments per issue: 0.5
  • Average comments per pull request: 0.5
  • Merged pull requests: 8
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • lhdjung (30)
  • LukasWallrich (4)
  • teunbrand (1)
  • kaz462 (1)
  • ianhussey (1)
  • citation-coin (1)
Pull Request Authors
  • lhdjung (46)
  • nrposner (2)
  • olivroy (2)
  • teunbrand (1)
Top Labels
Issue Labels
enhancement (2) documentation (2) new-package (2) bug (2)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • cran 432 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 7
  • Total maintainers: 1
cran.r-project.org: scrutiny

Error Detection in Science

  • Versions: 7
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 432 Last month
Rankings
Forks count: 21.9%
Dependent packages count: 29.8%
Average: 34.8%
Stargazers count: 35.2%
Dependent repos count: 35.5%
Downloads: 51.9%
Maintainers (1)
Last synced: 11 months ago

Dependencies

.github/workflows/R-CMD-check.yaml actions
  • actions/checkout v3 composite
  • r-lib/actions/check-r-package v2 composite
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/check-full.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/check-r-package v1 composite
  • r-lib/actions/setup-pandoc v1 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/check-release.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/check-r-package v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/check-standard.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/check-r-package v1 composite
  • r-lib/actions/setup-pandoc v1 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/lint-project.yaml actions
  • actions/checkout v3 composite
  • r-lib/actions/setup-r v2 composite
.github/workflows/lint.yaml actions
  • actions/checkout v3 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/pkgdown.yaml actions
  • JamesIves/github-pages-deploy-action v4.4.1 composite
  • actions/checkout v3 composite
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
DESCRIPTION cran
  • R >= 3.4.0 depends
  • cli * imports
  • dplyr * imports
  • glue * imports
  • magrittr * imports
  • methods * imports
  • purrr * imports
  • rlang >= 1.0.2 imports
  • stringr * imports
  • tibble * imports
  • corrr * suggests
  • covr * suggests
  • devtools * suggests
  • ellipsis * suggests
  • ggplot2 * suggests
  • ggrepel * suggests
  • janitor * suggests
  • knitr * suggests
  • rmarkdown * suggests
  • roxygen2 * suggests
  • stats * suggests
  • testthat >= 3.0.0 suggests
  • tidyr * suggests
  • tidyselect * suggests