The package provides the following matching methods:
* **optimal match**
+ one-to-one match
+ one-to-many match
+ variable ratio match
+ full match (not implemented yet)
* **greedy match**
+ not implemented yet
All matching methods support covariate and propensity score matching.
To obtain matches you can simply run:
```python
from opmatch.matcher import Matcher
case_control_dict = Matcher(
df, matching_ratio,
min_mr, max_mr, n_controls,
metric, matching_type,
case_col, var_cols, ps_col,
).match()
```
>#### Parameters
* **matching_ratio** number of controls per case if matching ratio is constant
* **min_mr**: minimum number of controls per case
* **max_mr**: maximum number of controls per case
* **n_controls**: number of controls to match
* **metric**: PS or one of the metrics accepted by scipy.spatial.distances.cdist
* **matching_type**: constant or variable matching ratio
* **case_col**: boolean column where cases are 1s and controls 0s
* **var_cols**: columns containing relevatn patient variables
if metric!=PS: var_cols used for matching
if metric==PS but ps_col is not specified: var_cols used to compute PS using logistic regression
* **ps_col**: column containing the propensity score
* **case_col**: column name of case column, should contain 1s and 0s
Raw data
{
"_id": null,
"home_page": "https://github.com/kirilklein/opmatch",
"name": "opmatch",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7, <4",
"maintainer_email": "",
"keywords": "matching,statistics,epidemiology,causal inference,propensity score,optimal matching,case-control matching,matching algorithms,matching methods,pharmacoepidemiology",
"author": "Kiril Klein",
"author_email": "kikl@di.ku.dk",
"download_url": "https://files.pythonhosted.org/packages/42/ce/2eb8f9975ff1ce4c18440eccb272edf70b75353a642ef5086771f112f061/opmatch-1.0.1.tar.gz",
"platform": null,
"description": "The package provides the following matching methods:\r\n* **optimal match**\r\n + one-to-one match\r\n + one-to-many match\r\n + variable ratio match\r\n + full match (not implemented yet)\r\n* **greedy match**\r\n + not implemented yet\r\n\r\nAll matching methods support covariate and propensity score matching.\r\n\r\nTo obtain matches you can simply run:\r\n\r\n```python\r\nfrom opmatch.matcher import Matcher\r\ncase_control_dict = Matcher(\r\n df, matching_ratio, \r\n min_mr, max_mr, n_controls, \r\n metric, matching_type,\r\n case_col, var_cols, ps_col,\r\n ).match()\r\n```\r\n>#### Parameters\r\n\r\n* **matching_ratio** number of controls per case if matching ratio is constant\r\n\r\n* **min_mr**: minimum number of controls per case\r\n* **max_mr**: maximum number of controls per case\r\n* **n_controls**: number of controls to match\r\n* **metric**: PS or one of the metrics accepted by scipy.spatial.distances.cdist\r\n* **matching_type**: constant or variable matching ratio\r\n* **case_col**: boolean column where cases are 1s and controls 0s\r\n* **var_cols**: columns containing relevatn patient variables\r\n if metric!=PS: var_cols used for matching\r\n if metric==PS but ps_col is not specified: var_cols used to compute PS using logistic regression\r\n* **ps_col**: column containing the propensity score\r\n* **case_col**: column name of case column, should contain 1s and 0s\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A leightweight package to perform optimal case-control matching.",
"version": "1.0.1",
"split_keywords": [
"matching",
"statistics",
"epidemiology",
"causal inference",
"propensity score",
"optimal matching",
"case-control matching",
"matching algorithms",
"matching methods",
"pharmacoepidemiology"
],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "6e04db99b8ea27c5bfad4099003c2d8a",
"sha256": "72005b27353a6135c143b221f97747b94d295bd3b654753cace51aba2a39d6ab"
},
"downloads": -1,
"filename": "opmatch-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "6e04db99b8ea27c5bfad4099003c2d8a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7, <4",
"size": 7741,
"upload_time": "2022-12-03T17:11:22",
"upload_time_iso_8601": "2022-12-03T17:11:22.143900Z",
"url": "https://files.pythonhosted.org/packages/42/ce/2eb8f9975ff1ce4c18440eccb272edf70b75353a642ef5086771f112f061/opmatch-1.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-03 17:11:22",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "kirilklein",
"github_project": "opmatch",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "opmatch"
}