npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

blue-button-pim

v2.2.0

Published

Patient Identification and Matching

Downloads

19

Readme

blue-button-pim

NPM

Patient Identification and Matching based on Blue Button data

Blocking phase - filter all patient population using blocker filter Candidates comparison phase - compare candidates with patient data one by one Scoring phase - Weight two records for potential match Match evaluation phase - Evaluate score result

PIM relies on Data Matching Algorithm use by the Oklahoma Department of Mental Health and Substance Abuse Services (ODHMSAS) which in turn was influenced by the article by Matthew A. Jaro published in the Statistics in Medicine Journal, Vol. 14, 491-198 (1995) titled ["Probabilistic Linkage of Large Public Health Data Files."] (http://www3.interscience.wiley.com/journal/114131327/abstract)

##Quick up and running quide

###Prerequisites

  • Node.js (v0.10+) and NPM
  • Grunt.js
# you need Node.js and Grunt.js installed

#install dependencies and build
npm install
grunt

Module components

calculateBlockers(data)

This function returns an object with the blocking traits for a given patient's demographic information. The purpose of this object is for targeted filtering in MongoDB queries. For exampe, we could use the following code to return a set of candidates for comparison:

var pim = calculateBlockers(data);

var query = model.find({
        $or: [{
            "pim.lnmpdob": pim.lnmpdob
        }, {
            "pim.lnmpfnpc": pim.lnmpfnpc
        }, {
            "pim.lnfn": pim.lnfn
        }, {
            "pim.smdlastname13": pim.smdlastname13
        }]
    });

query.exec(function (err, results) {
        if (err) {
            callback(err);
        } else {
            callback(null, results);
        }
    });

Within the callback we can compare candidates.

compareCandidates(data, candidates, shim)

This function will take demographic data and a list of candidates and return a list of matches and flagged candidates. Each object in the result array has a pat_key and a flag match. An ideal implementation of this module would result in only one automatic result at a time. In the case that there is a manual result, a user should be presented with all results flagged as manual. An optional shim can be passed for translating demographic data within a database to match the schema detailed in blocker.js.

Contributing

Contributors are welcome. See issues https://github.com/amida-tech/blue-button-pim/issues

Release Notes

See release notes [here] (./RELEASENOTES.md)

License

Licensed under Apache 2.0