Skip to content

IOL vs EM cost analysis runs unmodified on Jenner — test bundle#1

Open
jenner-analytics wants to merge 1 commit into
Yanan-Hu:mainfrom
jenner-analytics:jenner-check/initial-bundles
Open

IOL vs EM cost analysis runs unmodified on Jenner — test bundle#1
jenner-analytics wants to merge 1 commit into
Yanan-Hu:mainfrom
jenner-analytics:jenner-check/initial-bundles

Conversation

@jenner-analytics

@jenner-analytics jenner-analytics commented Jul 17, 2026

Copy link
Copy Markdown

Jenneranalytics.com provides an API that runs SAS code, with support for more than 200 SAS procedures. You can also use it with AI assistants in a collaborative workspace. It's available for Mac on the Apple App Store, and by license for Windows and Linux.

We support the larger community by
(1) increasing access to SAS-compatible systems,
(2) by providing test coverage and a test coverage framework to public SAS repos in order to encourage the use of best practices in software engineering.

Your IOL vs EM cost analysis.sas runs on Jenner unmodified — this PR adds a small compatibility bundle so you can see for yourself. It's the test we wrote for your analysis, shared in case it's useful, and was assembled with AI assistance as is most code in modern businesses today.

What stood out reading the program is how much of the analytic pipeline is carried by a handful of reusable patterns. The comorbidity step is a good example: you transpose the maternal condition rows wide, then walk ARRAY cond(*) $ medic_cond1-medic_cond29 with find() to fold ICD-10 codes into the direct and indirect groups (HDP, diabetes, cholestasis, endocrine, circulatory, and the rest), and then apply the exact same mapping again to pregnancy complications. Keeping one classification and reusing it for both condition sources is a clean way to keep the two from drifting apart. The negative-binomial PROC GENMOD with a log link and the LSMEANS ... / ilink cl exp pdiff back-transform for adjusted mean costs is also a nicely chosen fit for skewed health-cost data.

The jenner-check/ directory is self-contained and nothing runs when this PR is merged — no workflows, no hooks. Each folder holds one segment of your analysis adapted to run against a small inline sample (your matern.* and costs.* libraries stay on your machine), the captured log and listing from running it, and a short runner:

jenner-check/
├── run_jenner.sh
├── README.md
├── t001_comorbidity_classifier/   # ARRAY + find() ICD-10 comorbidity grouping
├── t002_cost_aggregation/         # cost-component sums, rounding, FREQ + MEANS
├── t003_crude_cost_means/         # crude GW-37 costs, MEANS n mean stderr clm
├── t004_genmod_nb_adjusted/       # adjusted cost model, GENMOD dist=nb link=log
├── t005_last_birth_transpose/     # PROC TRANSPOSE of prior delivery methods
└── t006_inp_cost_sqljoin/         # SQL join + intck birth-month inpatient match

To try one without cloning anything, check out this PR and pipe a script straight to the hosted API:

# check out this PR (puts you on its branch), then run from the repo root:
gh pr checkout 1
curl -sS --data-binary @jenner-check/t005_last_birth_transpose/script.sas https://api.jenneranalytics.com/v1/quick

Running cd jenner-check && ./run_jenner.sh --all re-runs every bundle and checks the pinned fields in each expected.json. The API is free to try with no signup; full API reference is in the docs.

On data: the runner sends only the SAS source text of the script you run (plus a two-line autoexec) to api.jenneranalytics.com, which runs it and returns the log and listing. It does not read or upload any data files, so anything sitting next to a script stays on your machine, and nothing is sent unless you run a command yourself — the same as pasting a snippet into any hosted tool. The one thing worth a glance is that a script's own source is what's transmitted, so you can review it first if it ever embeds sensitive values inline.

Merge it, close it, or ignore it — all fine, and no response is expected. We won't open further PRs in this repo. If you'd rather not hear from this check again, reply with no-more-prs in any comment, or open an issue titled jenner-check: opt out.


Lawrence W. Sinclair
CEO / Jenner Analytics Ltd
linkedin.com/in/lwsinclair/

Adds a self-contained jenner-check/ directory with six bundles, each one
segment of IOL vs EM cost analysis.sas adapted to run against a small inline
sample so the analysis's logic can be exercised without the matern.* / costs.*
libraries:
  t001 comorbidity classifier (ARRAY + find() ICD-10 grouping)
  t002 cost-component aggregation (sums, rounding, FREQ + MEANS)
  t003 crude GW-37 cost means (n mean stderr clm by parity and exposure)
  t004 adjusted cost model (PROC GENMOD dist=nb link=log, LSMEANS ilink)
  t005 prior delivery method reshape (PROC TRANSPOSE)
  t006 birth-month inpatient match (PROC SQL join + intck)
Each bundle carries the captured log and listing plus an expected.json the
bundled run_jenner.sh runner verifies. Nothing executes on merge.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant