Code Monkey home page Code Monkey logo

price_indice_util's Introduction

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”.

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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.