{"id":16272791,"url":"https://github.com/dominiquemakowski/easyrt","last_synced_at":"2025-08-22T15:06:48.123Z","repository":{"id":169752789,"uuid":"641537439","full_name":"DominiqueMakowski/easyRT","owner":"DominiqueMakowski","description":"Tools and examples for fitting (Hierarchical) Drift Diffusion Models in R","archived":false,"fork":false,"pushed_at":"2023-07-11T10:26:00.000Z","size":5422,"stargazers_count":10,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-03T08:11:06.585Z","etag":null,"topics":["bayesian","brms","ddm","decision","diffusion","drift","error","hddm","lba","linear","making","r","reaction","rt","time"],"latest_commit_sha":null,"homepage":"https://dominiquemakowski.github.io/easyRT/","language":"TeX","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DominiqueMakowski.png","metadata":{"files":{"readme":"README.Rmd","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-16T17:18:34.000Z","updated_at":"2024-11-17T01:37:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"b7b8878c-5de7-4219-ae43-1d41c6be1fdc","html_url":"https://github.com/DominiqueMakowski/easyRT","commit_stats":{"total_commits":8,"total_committers":1,"mean_commits":8.0,"dds":0.0,"last_synced_commit":"b50e1da3fa968e0b39d965cbebb9a2811dbd2eed"},"previous_names":["dominiquemakowski/easyrt"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/DominiqueMakowski/easyRT","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DominiqueMakowski%2FeasyRT","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DominiqueMakowski%2FeasyRT/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DominiqueMakowski%2FeasyRT/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DominiqueMakowski%2FeasyRT/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DominiqueMakowski","download_url":"https://codeload.github.com/DominiqueMakowski/easyRT/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DominiqueMakowski%2FeasyRT/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271657717,"owners_count":24797935,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-22T02:00:08.480Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bayesian","brms","ddm","decision","diffusion","drift","error","hddm","lba","linear","making","r","reaction","rt","time"],"created_at":"2024-10-10T18:19:03.612Z","updated_at":"2025-08-22T15:06:48.099Z","avatar_url":"https://github.com/DominiqueMakowski.png","language":"TeX","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\noutput: github_document\neditor_options: \n  chunk_output_type: console\n---\n\n# easyRT\n\n*Tools and examples for modelling Reaction Times in R*\n\n**[WORK IN PROGRESS]**\n\n```{r setup, echo = FALSE, warning=FALSE, message=FALSE}\noptions(digits = 3)\n\nlibrary(easyRT)\nlibrary(tidyverse)\nlibrary(patchwork)\n\nknitr::opts_chunk$set(\n  collapse = TRUE,\n  dpi = 450,\n  fig.path = \"man/figures/\"\n)\n```\n\n```{r echo=FALSE, fig.height=5, fig.width=8, message=FALSE, warning=FALSE, dpi=600}\nset.seed(3)\n\nsim \u003c- ddm_data(n=2000, drift = c(0, 1.3), bs = 1, bias = c(0.4, 0.6), ndt = c(0.15, 0.2), n_traces = 5, ndt_var=0) \n\nsim$data \u003c- mutate(sim$data, condition = fct_recode(condition, \"Speed\" = \"1\", \"Accuracy\" = \"2\"))\nsim$traces \u003c- mutate(sim$traces, condition = fct_recode(condition, \"Speed\" = \"1\", \"Accuracy\" = \"2\"))\nsim$density \u003c- mutate(sim$density, condition = fct_recode(condition, \"Speed\" = \"1\", \"Accuracy\" = \"2\"))\n\n\n(ddm_plot_upper(sim$data, breaks = 150, density = sim$density, xlim = c(0, 1)) +\n  scale_color_manual(values = c(\"#3949AB\", \"#FF5722\")) +\n  scale_fill_manual(values = c(\"#3949AB\", \"#FF5722\"))) /\n(ddm_plot_traces(sim$traces, trace_alpha = 1, trace_linewidth = 0.2, xlim = c(0, 1)) +\n  scale_color_manual(values = c(\"#3949AB\", \"#FF5722\"))) /\n(ddm_plot_lower(sim$data, breaks = 150, density = sim$density, xlim = c(0, 1)) +\n  scale_color_manual(values = c(\"#3949AB\", \"#FF5722\")) +\n  scale_fill_manual(values = c(\"#3949AB\", \"#FF5722\")))\n```\n\n## Motivation \n\nThis repo started as my attempt at understanding and implementing sequential models, starting with (Hierarchical) Drift Diffusion Models (DDMs) for reaction times in R. **Please don't hesitate** to open an issue to discuss and suggest things that could be improved or clarified.\n\n\n## Content\n\nReaction time (RTs) have been traditionally modelled using traditional linear models (e.g., ANOVAs). However, it is problematic because RTs are **not** normally distributed. A popular mitigation method is to **transform** the data (e.g., by log-transform), but it is **not a good idea** ([Schramm \u0026 Rouder, 2019](https://doi.org/10.31234/osf.io/9ksa6)). Instead, one should use statistical models that **describe** or **generate** RT-like data.\n\nYou should start by reading:\n\n- [**Lindelov's overview of RT models**](https://lindeloev.github.io/shiny-rt/): An absolute must-read.\n- [**De Boeck \u0026 Jeon (2019)**](https://www.frontiersin.org/articles/10.3389/fpsyg.2019.00102/full): A paper providing an overview of RT models.\n\nThis repository contain the following vignettes:\n\n- [**Drift Diffusion Model (DDM) in R: A Tutorial**](https://dominiquemakowski.github.io/easyRT/articles/ddm.html)\n- [**Ex-Gaussian models in R: A Tutorial**](https://dominiquemakowski.github.io/easyRT/articles/exgaussian.html)\n\n*Note: these are work-in-progress. Please get in touch if you want to contribute and help, it's a good way of learning.*\n\n\n## Installation\n\n```{r eval=FALSE}\nremotes::install_github(\"DominiqueMakowski/easyRT\")\n\nlibrary(easyRT)\n```\n\n## What does this package do?\n\nNot much. It is mostly about its vignettes, but it also has some convenience functions to generate and plot drift diffusion models. We'll see how it evolves over time.\n\n```{r warning=FALSE, message=FALSE, fig.width=5, fig.height=8, dpi=450}\nsim \u003c- ddm_data(drift = c(0, 1), bs = 1, bias = 0.5, ndt = 0.2)\n\nddm_plot(sim)\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdominiquemakowski%2Feasyrt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdominiquemakowski%2Feasyrt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdominiquemakowski%2Feasyrt/lists"}