13  Ethics Approval Check

13.1 What it checks

The ethics_check module searches a paper for a statement that the research received ethics approval — for example from an Institutional Review Board (IRB), a Research Ethics Committee, or an animal-care committee — or that it was explicitly exempted or waived. Reporting ethics approval is expected for studies involving human or animal participants.

The module recognises a wide range of committee names and approval phrasing across several languages and conventions, including:

  • Human research committees — Institutional Review Board (IRB), Independent Ethics Committee (IEC), Research/Medical Ethics Committee, and abbreviations such as REC, REB, ERB, METC, DEC.
  • Animal research committees — IACUC, Animal Welfare Ethical Review Body (AWERB), and language variants.
  • Approval phrasing — “approved by the … ethics committee”, “ethically approved”, “approved under protocol …”.
  • Waivers and exemptions — “ethics waiver”, “deemed exempt”, “IRB exemption”.
  • Declaration of Helsinki statements.

13.1.1 How it decides whether ethics approval is needed

Not every paper needs an ethics statement — theoretical work, simulations, reviews, meta-analyses, and secondary analyses of existing data usually do not. So the module does not simply flag every paper that lacks an approval statement. Instead it first judges whether the paper appears to involve live data collection from human or animal participants, and only flags a missing statement for those papers.

This judgment is made by an internal helper that searches the text for sentences signalling that data were collected directly from participants — for example:

  • participant actions — “participants were recruited / randomly assigned / debriefed”, “subjects gave informed consent”;
  • researcher actions — “we recruited / enrolled / ran participants”, “we conducted the study / survey / clinical trial”;
  • consent and recruitment — “informed consent was obtained”, a “participant pool” or “research participation scheme”;
  • sample descriptions — “our participants”, student samples, or participant/patient inclusion and exclusion criteria;
  • animal data collection — equivalent phrasing for animal subjects.

The patterns are deliberately conservative: they require explicit participant- or recruitment-language rather than generic words like “sample”, so that papers re-analysing existing survey data or running computational experiments are not mistakenly flagged.

A paper that states that no human or animal subjects took part does not need an ethics statement, whatever participant phrase it also contains. The module looks for statements such as “no human subjects were involved”, “did not involve human participants”, “no animals nor human participants were involved”, or that people took part “not as subjects” (as in a paper whose professionals “described their own work as collaborators in the projects, not as subjects recruited for a study”, where “subjects recruited” alone would count as recruiting participants). Such a statement is recorded in the states_no_participants column of the summary table, and the report quotes it. A negation near a participant phrase is not enough on its own: “No participants were minors” and “No participants were excluded” describe studies that did have participants, so the statement must name human or animal subjects, or say “not as subjects”.

The result is stored in the needs_ethics column of the summary table, which is FALSE for a paper that states no participants took part. The traffic light only turns red for papers where needs_ethics is TRUE and no approval statement was found.

This module is fully offline — it uses only regular expressions, so all the code below runs with just the Metacheck package.

13.2 Running the module

NoteWithout R

This module also runs on Metacheck’s website: upload a paper under Run Metacheck on a Paper, where it is one of the default checks under Checks. The Docker installation offers the same website on your own computer. The website runs the module with its default settings; to change them, run it in R as below.

The module only flags a missing statement when a paper appears to involve live data collection (so re-analyses of existing data are not penalised). We run it across the first ten papers of the psychsci corpus (see Using the Paper Database Corpora).

mo <- module_run(psychsci[1:10], "ethics_check")
mo$traffic_light
#> [1] "red"
mo$summary_text
#> [1] "3 of 10 papers appeared to involve live data collection and lacked an ethics approval statement."

The summary_table has one row per paper, with an ethics_approved flag, whether the paper appears to need a statement (needs_ethics), whether it states that no participants took part (states_no_participants), and the matched statement(s):

mo$summary_table[, c("paper_id", "ethics_approved", "needs_ethics",
                     "states_no_participants")] |>
  knitr::kable()
paper_id ethics_approved needs_ethics states_no_participants
0956797613520608 TRUE TRUE FALSE
0956797614522816 FALSE TRUE FALSE
0956797614527830 TRUE TRUE FALSE
0956797614557697 TRUE TRUE FALSE
0956797614560771 FALSE TRUE FALSE
0956797614566469 FALSE FALSE FALSE
0956797615569001 FALSE TRUE FALSE
0956797615569889 TRUE TRUE FALSE
0956797615583071 TRUE TRUE FALSE
0956797615588467 TRUE TRUE FALSE

13.3 A clean example and one with problems

Papers that report approval show the exact sentence the module matched — useful for confirming it found a genuine statement:

approved <- mo$summary_table[mo$summary_table$ethics_approved %in% TRUE, ]
approved$ethics_statements[[1]]
#> [1] "The ethics committee for the region of Midtjylland, Denmark, approved the experiment."

Papers that appear to collect data but contain no approval statement are the ones to check. These are what turn the traffic light red:

mo$summary_table[mo$summary_table$needs_ethics %in% TRUE &
                 mo$summary_table$ethics_approved %in% FALSE, "paper_id"]
#> [1] "0956797614522816" "0956797614560771" "0956797615569001"

A missing statement is not proof that approval was never obtained — many authors simply omit it — but it flags papers where a reviewer should confirm the ethics reporting.

13.4 Options

ethics_check takes only the paper argument.

13.5 Notes

Because the module matches committee names and approval phrasing with regular expressions, it can miss unusually worded statements, and may occasionally match a sentence that mentions ethics for another reason. As with every module, treat the output as a prompt for human judgement rather than a verdict.