# PriceIndexCalc

 Name PriceIndexCalc JSON Version 0.1.dev9 JSON download home_page https://github.com/drrobotk/PriceIndexCalc Summary Price Index Calculator using bilateral and multilateral methods upload_time 2022-05-16 09:46:11 maintainer docs_url None author Dr. Usman Kayani requires_python >=3.7.1 license MIT keywords VCS bugtrack_url requirements No requirements were recorded. Travis-CI No Travis. coveralls test coverage No coveralls.
```            # PriceIndexCalc

Calculate bilateral and multilateral price indices in Python using vectorized methods Pandas or PySpark. These index methods are being used or currently being implemented by many statistical agencies around the world to calculate price indices e.g the Consumer Price Index (CPI). Multilateral methods can use a specified number of time periods to calculate the resulting price index; the number of time-periods used by multilateral methods is commonly defined as a “window length”.

<img src="https://user-images.githubusercontent.com/51001263/164988385-855ceecf-a5e0-4073-8239-cb1f2304d244.png" width="30%" />

Bilateral methods supported: Carli, Jevons, Dutot, Laspeyres, Paasche, Lowe, geometric Laspeyres, geometric Paasche, Drobish, Marshall-Edgeworth, Palgrave, Fisher, Tornqvist, Walsh, Sato-Vartia, Geary-Khamis, TPD and Rothwell.

Multilateral methods supported: GEKS paired with a bilateral method (e.g GEKS-T aka CCDI), Time Product Dummy (TPD), Time Dummy Hedonic (TDH), Geary-Khamis (GK) method.

Multilateral methods simultaneously make use of all data over a given time period. The use of multilateral methods for calculating temporal price indices is relatively new internationally, but these methods have been shown to have some desirable properties relative to their bilateral method counterparts, in that they account for new and disappearing products (to remain representative of the market) while also reducing the scale of chain-drift.

### Directory layout:
.
├── pandas_modules                    # Pandas modules
│   ├── index_methods.py
│   ├── chaining.py
│   ├── extension_methods.py    # New timeseries extension methods (experimental)
│   ├── helpers.py
│   ├── bilateral.py
│   ├── multilateral.py
|   └── weighted_least_squares.py
├── pyspark_modules                    # PySpark modules (experimental)
│   ├── index_methods.py
│   ├── chaining.py
│   ├── helpers.py
│   ├── multilateral.py
|   └── weighted_least_squares.py
└── README.md

```

### Raw data

```            {
"_id": null,
"home_page": "https://github.com/drrobotk/PriceIndexCalc",
"name": "PriceIndexCalc",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7.1",
"maintainer_email": "",
"keywords": "",
"author": "Dr. Usman Kayani",
"author_email": "usman.kayani@ons.gov.uk",
"download_url": "https://files.pythonhosted.org/packages/f3/6d/226b985b41afbf1a733a9ab8deee3db3f8157fd70748ca0a78cc45b2d42c/PriceIndexCalc-0.1.dev9.tar.gz",
"platform": null,
"description": "# PriceIndexCalc\n\nCalculate bilateral and multilateral price indices in Python using vectorized methods Pandas or PySpark. These index methods are being used or currently being implemented by many statistical agencies around the world to calculate price indices e.g the Consumer Price Index (CPI). Multilateral methods can use a specified number of time periods to calculate the resulting price index; the number of time-periods used by multilateral methods is commonly defined as a \u201cwindow length\u201d. \n\n<img src=\"https://user-images.githubusercontent.com/51001263/164988385-855ceecf-a5e0-4073-8239-cb1f2304d244.png\" width=\"30%\" />\n\nBilateral methods supported: Carli, Jevons, Dutot, Laspeyres, Paasche, Lowe, geometric Laspeyres, geometric Paasche, Drobish, Marshall-Edgeworth, Palgrave, Fisher, Tornqvist, Walsh, Sato-Vartia, Geary-Khamis, TPD and Rothwell.\n\nMultilateral methods supported: GEKS paired with a bilateral method (e.g GEKS-T aka CCDI), Time Product Dummy (TPD), Time Dummy Hedonic (TDH), Geary-Khamis (GK) method. \n\nMultilateral methods simultaneously make use of all data over a given time period. The use of multilateral methods for calculating temporal price indices is relatively new internationally, but these methods have been shown to have some desirable properties relative to their bilateral method counterparts, in that they account for new and disappearing products (to remain representative of the market) while also reducing the scale of chain-drift. \n\n### Directory layout:\n    .\n    \u251c\u2500\u2500 pandas_modules                    # Pandas modules\n    \u2502   \u251c\u2500\u2500 index_methods.py         \n    \u2502   \u251c\u2500\u2500 chaining.py\n    \u2502   \u251c\u2500\u2500 extension_methods.py    # New timeseries extension methods (experimental)                 \n    \u2502   \u251c\u2500\u2500 helpers.py             \n    \u2502   \u251c\u2500\u2500 bilateral.py            \n    \u2502   \u251c\u2500\u2500 multilateral.py\n    |   \u2514\u2500\u2500 weighted_least_squares.py                 \n    \u251c\u2500\u2500 pyspark_modules                    # PySpark modules (experimental)\n    \u2502   \u251c\u2500\u2500 index_methods.py              \n    \u2502   \u251c\u2500\u2500 chaining.py             \n    \u2502   \u251c\u2500\u2500 helpers.py             \n    \u2502   \u251c\u2500\u2500 multilateral.py\n    |   \u2514\u2500\u2500 weighted_least_squares.py\n    \u2514\u2500\u2500 README.md\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Price Index Calculator using bilateral and multilateral methods",
"version": "0.1.dev9",
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "1e2a0c8fadcccaa824876e17327547cb",
"sha256": "dc66d449e10ac4dbd6c6315ba7bce762cd11bae7475036a70b491fcaf661d6e6"
},
"downloads": -1,
"filename": "PriceIndexCalc-0.1.dev9.tar.gz",
"has_sig": false,
"md5_digest": "1e2a0c8fadcccaa824876e17327547cb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7.1",
"size": 21617,
"upload_time": "2022-05-16T09:46:11",
"upload_time_iso_8601": "2022-05-16T09:46:11.697962Z",
"url": "https://files.pythonhosted.org/packages/f3/6d/226b985b41afbf1a733a9ab8deee3db3f8157fd70748ca0a78cc45b2d42c/PriceIndexCalc-0.1.dev9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-05-16 09:46:11",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "drrobotk",
"github_project": "PriceIndexCalc",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "priceindexcalc"
}
```
Elapsed time: 0.32894s