{
  "_id": "6ae33fcb95ca2370cc8ce39c",
  "Package": "saydo",
  "Title": "Link What People Say to What They Do with LLM-Coded Themes",
  "Version": "0.1.0",
  "Authors@R": "c(\nperson(\"Bernard Isekah\", \"Osangir\", , \"b.osangir@gmail.com\", role = c(\"aut\", \"cre\")),\nperson(\"Neudata Consulting Ltd\", role = c(\"cph\", \"fnd\"))\n)",
  "Description": "Measures the say-do gap in mixed-methods data: whether\nthemes in what people say go with differences in what they do.\nCodes free text against a codebook with large language models\nthrough 'ellmer', or any coder function, and validates the\ncodes against a human-coded sample with Cohen's kappa,\nprecision and recall. Links the codes to participants'\nbehavioural or outcome data, aggregating segment-level\ntranscripts to participants where needed, and tests each theme\nagainst each metric with Welch's t-test and multiple-comparison\nadjustment. Developed by Neudata Consulting Ltd.",
  "License": "MIT + file LICENSE",
  "URL": "https://neu-data.github.io/saydo/,\nhttps://github.com/neu-data/saydo",
  "BugReports": "https://github.com/neu-data/saydo/issues",
  "VignetteBuilder": "knitr",
  "Config/testthat/edition": "3",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "Config/roxygen2/version": "8.0.0",
  "Config/pak/sysreqs": "libssl-dev",
  "Repository": "https://neu-data.r-universe.dev",
  "Date/Publication": "2026-10-18 12:53:04 UTC",
  "RemoteUrl": "https://github.com/neu-data/saydo",
  "RemoteRef": "HEAD",
  "RemoteSha": "1e8974721edfcad50ffa435af72b462488ee7774",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-29 11:57:00 UTC",
    "User": "root"
  },
  "Author": "Bernard Isekah Osangir [aut, cre],\nNeudata Consulting Ltd [cph, fnd]",
  "Maintainer": "Bernard Isekah Osangir <b.osangir@gmail.com>",
  "_user": "neu-data",
  "_type": "src",
  "_file": "saydo_0.1.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/ccfd2b70252218ad6abd9ea49865e1871c0737ade5fb3de3ffb39ab31e2a961a",
  "_filesize": 319596,
  "_sha256": "ccfd2b70252218ad6abd9ea49865e1871c0737ade5fb3de3ffb39ab31e2a961a",
  "_expires": "2027-02-06T12:44:58.000Z",
  "_created": "2026-10-29T11:57:00.000Z",
  "_published": "2026-10-29T12:44:59.971Z",
  "_upstream": "https://github.com/neu-data/saydo",
  "_status": "success",
  "_maintainer": {
    "name": "Bernard Isekah Osangir",
    "email": "b.osangir@gmail.com",
    "login": "bosangir",
    "description": "Biostatistician | Data Scientist | Statistical Programmer | Educator | \nPhD Researcher (UHasselt & SCK-CEN)",
    "uuid": 47070732
  },
  "_jobs": [
    {
      "job": 123432146217,
      "time": 117,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12895481506"
    },
    {
      "job": 123432146018,
      "time": 120,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12895920629"
    },
    {
      "job": 123432146102,
      "time": 200,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "12896744683"
    },
    {
      "job": 123432146086,
      "time": 164,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12898031646"
    },
    {
      "job": 123430938340,
      "time": 163,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12894384115"
    },
    {
      "job": 123432145994,
      "time": 91,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "12895286679"
    },
    {
      "job": 123432146068,
      "time": 76,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12895366262"
    },
    {
      "job": 123432146179,
      "time": 74,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "12894544869"
    },
    {
      "job": 123432146058,
      "time": 72,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12895646171"
    }
  ],
  "_buildurl": "https://github.com/r-universe/neu-data/actions/runs/40868961962",
  "_commit": {
    "id": "1e8974721edfcad50ffa435af72b462488ee7774",
    "author": "bosangir <47070732+bosangir@users.noreply.github.com>",
    "committer": "bosangir <47070732+bosangir@users.noreply.github.com>",
    "message": "Record CRAN submission of saydo 0.1.0\n",
    "time": 1792327984
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1",
      "role": "Depends"
    },
    {
      "package": "cli",
      "role": "Imports"
    },
    {
      "package": "ellmer",
      "version": ">= 0.3.0",
      "role": "Imports"
    },
    {
      "package": "ggplot2",
      "version": ">= 3.5.0",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "withr",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    }
  ],
  "_owner": "neu-data",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-42",
      "n": 12
    }
  ],
  "_tags": [],
  "_stars": 0,
  "_contributors": [
    {
      "user": "bosangir",
      "count": 12,
      "uuid": 47070732
    }
  ],
  "_userbio": {
    "uuid": 47070744,
    "type": "organization",
    "name": "Neudata Consulting Ltd",
    "followers": 4
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/saydo"
  },
  "_devurl": "https://github.com/neu-data/saydo",
  "_pkgdown": "https://neu-data.github.io/saydo/",
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "extra/saydo.html",
    "LICENSE"
  ],
  "_homeurl": "https://github.com/neu-data/saydo",
  "_realowner": "neu-data",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2026-10-28"
    }
  ],
  "_exports": [
    "code_agreement",
    "cross_tab_themes",
    "llm_auto_code",
    "mock_coder",
    "mock_mixed_data",
    "plot_theme_impact"
  ],
  "_help": [
    {
      "page": "code_agreement",
      "title": "Measure agreement between LLM codes and human codes",
      "topics": [
        "code_agreement"
      ]
    },
    {
      "page": "cross_tab_themes",
      "title": "Cross-tabulate qualitative themes against a quantitative metric",
      "topics": [
        "cross_tab_themes"
      ]
    },
    {
      "page": "llm_auto_code",
      "title": "Auto-code text with a codebook using structured LLM extraction",
      "topics": [
        "llm_auto_code"
      ]
    },
    {
      "page": "mock_coder",
      "title": "A keyword-based stand-in coder for demos and tests",
      "topics": [
        "mock_coder"
      ]
    },
    {
      "page": "mock_mixed_data",
      "title": "Generate synthetic mixed-methods behavioural data",
      "topics": [
        "mock_mixed_data"
      ]
    },
    {
      "page": "plot_theme_impact",
      "title": "Plot how a metric shifts when each qualitative theme is present",
      "topics": [
        "plot_theme_impact"
      ]
    }
  ],
  "_pkglogo": "https://github.com/neu-data/saydo/raw/HEAD/man/figures/logo.png",
  "_readme": "https://github.com/neu-data/saydo/raw/HEAD/README.md",
  "_rundeps": [
    "askpass",
    "cli",
    "coro",
    "cpp11",
    "curl",
    "ellmer",
    "farver",
    "fastmap",
    "ggplot2",
    "glue",
    "gtable",
    "httr2",
    "isoband",
    "jsonlite",
    "labeling",
    "later",
    "lifecycle",
    "magrittr",
    "openssl",
    "otel",
    "pillar",
    "pkgconfig",
    "promises",
    "R6",
    "RColorBrewer",
    "Rcpp",
    "rlang",
    "S7",
    "scales",
    "sys",
    "tibble",
    "utf8",
    "vctrs",
    "viridisLite",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "saydo.Rmd",
      "filename": "saydo.html",
      "title": "Getting started with saydo",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The data",
        "Step 1: write a codebook",
        "Step 2: code the text",
        "Step 3: check the coding against a human",
        "Step 4: link themes to the metrics",
        "Step 5: plot",
        "Segment-level transcripts",
        "Data protection"
      ],
      "created": "2026-10-18 12:26:18",
      "modified": "2026-10-18 12:26:18",
      "commits": 1
    }
  ],
  "_score": 3.6989700043360187,
  "_indexed": true,
  "_nocasepkg": "saydo",
  "_universes": [
    "neu-data",
    "bosangir"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.0",
      "date": "2026-10-29T11:58:58.000Z",
      "distro": "resolute",
      "commit": "1e8974721edfcad50ffa435af72b462488ee7774",
      "fileid": "https://r2.ropensci.org/5f4b8764d7b665cb20210c58f3d5666a1c15e3b968d673669e27a6647a22082a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neu-data/actions/runs/40868961962"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.1.0",
      "date": "2026-10-29T11:59:03.000Z",
      "distro": "resolute",
      "commit": "1e8974721edfcad50ffa435af72b462488ee7774",
      "fileid": "https://r2.ropensci.org/a3881017d124565ebf771bcbff6a78ff3b4196d8f92508f1a6fa480bee7c9f1f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neu-data/actions/runs/40868961962"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.1.0",
      "date": "2026-10-29T12:43:59.000Z",
      "commit": "1e8974721edfcad50ffa435af72b462488ee7774",
      "fileid": "https://r2.ropensci.org/7716f5997909f9b6b1cb2e70412cc1d096da9355ee6be60208549d6572e57f58",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neu-data/actions/runs/40868961962"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.1.0",
      "date": "2026-10-29T12:42:52.000Z",
      "commit": "1e8974721edfcad50ffa435af72b462488ee7774",
      "fileid": "https://r2.ropensci.org/ee4e3d0ff833d6063071fd349520d81ded2522f46a97c15658a8a4b372cf9e7b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neu-data/actions/runs/40868961962"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.1.0",
      "date": "2026-10-29T11:58:49.000Z",
      "commit": "1e8974721edfcad50ffa435af72b462488ee7774",
      "fileid": "https://r2.ropensci.org/83d9acb8408239303b4c6ff13b45792c54028d57d4155f861b7ec042d9255529",
      "status": "success",
      "buildurl": "https://github.com/r-universe/neu-data/actions/runs/40868961962"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.1.0",
      "date": "2026-10-29T11:58:11.000Z",
      "commit": "1e8974721edfcad50ffa435af72b462488ee7774",
      "fileid": "https://r2.ropensci.org/68ba4ee276f1988731d645ebbebb585f4aa74a2cff20f1dc1f788dac75a927ed",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neu-data/actions/runs/40868961962"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.1.0",
      "date": "2026-10-29T11:58:14.000Z",
      "commit": "1e8974721edfcad50ffa435af72b462488ee7774",
      "fileid": "https://r2.ropensci.org/394225ed1c1b93c88ec3c1a88954906ca96a44749954f4c22ed105203b06bd80",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neu-data/actions/runs/40868961962"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.1.0",
      "date": "2026-10-29T11:58:14.000Z",
      "commit": "1e8974721edfcad50ffa435af72b462488ee7774",
      "fileid": "https://r2.ropensci.org/c48a56727812055b69821d1126a4ca8e1ca53e15280f6a95c947ac0359ec9337",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neu-data/actions/runs/40868961962"
    }
  ]
}