Skip to main content

ausdex

pipline Contributor Covenant status

A Python package for adjusting Australian dollars for inflation.

The Australian Bureau of Statistics (ABS) publishes the Consumer Price Index (CPI) for Australia and its capital cities which allows for adjustment of the value of Australian dollars for inflation. ausdex makes these data available with an inflation calculator in a convenient Python package with simple programmatic and command-line interfaces.

ABS datasets are generally housed in Microsoft Excel spreadsheets linked from the data catalogue. Working with these spreadsheets directly is cumbersome. The ausdex package provides an Application Programming Interface (API) for Australian CPI data that seemlessly interoperates with NumPy and pandas. It makes working with Australian dollars in Python convenient in a similar manner to the cpi Python package which adjusts US dollars for inflation.

The package is documented here: https://rbturnbull.github.io/ausdex

Installation

You can install ausdex from the Python Package Index (PyPI):

pip install ausdex

ausdex requires Python 3.8 or higher.

To install ausdex for development, see the documentation for contributing.

Command Line Usage

Adjust single values using the command line interface:

ausdex inflation VALUE ORIGINAL_DATE

This adjust the value from the original date to the equivalent for the most recent quarter.

For example, to adjust $26 from July 21, 1991 to the latest quarter run:

$ ausdex inflation 26 "July 21 1991" 
$ 52.35

To choose a different date for evaluation use the --evaluation-date option. This adjusts the value to dollars in the quarter corresponding to that date. For example, this command adjusts $26 from July 1991 to dollars in September 1999:

$ ausdex inflation 26 "July 21 1991"  --evaluation-date "Sep 1999"
$ 30.27

By default, ausdex uses the CPI for Australia in general but you can calculate the inflation for specific capital cities with the --location argument:

$ ausdex inflation 26 "July 21 1991"  --evaluation-date "Sep 1999" --location sydney
$ 30.59

Location options are: 'Australia', 'Sydney', 'Melbourne', 'Brisbane', 'Adelaide', 'Perth', 'Hobart', 'Darwin', and 'Canberra'.

Module Usage

>>> import ausdex
>>> ausdex.calc_inflation(26, "July 21 1991")
52.35254237288135
>>> ausdex.calc_inflation(26, "July 21 1991", evaluation_date="Sep 1999")
30.27457627118644
>>> ausdex.calc_inflation(26, "July 21 1991", evaluation_date="Sep 1999", location="sydney")
30.59083191850594

The dates can be as strings or Python datetime objects.

The values, the dates and the evaluation dates can be vectors by using NumPy arrays or Pandas Series. e.g.

>>> df = pd.DataFrame(data=[ [26, "July 21 1991"],[25,"Oct 1989"]], columns=["value","date"] )
>>> df['adjusted'] = ausdex.calc_inflation(df.value, df.date)
>>> df
   value          date   adjusted
0     26  July 21 1991  52.352542
1     25      Oct 1989  54.797048

Dataset and Validation

The Consumer Price Index dataset is taken from the Australian Bureau of Statistics. It uses the nation-wide CPI value. The validation examples in the tests are taken from the Australian Reserve Bank's inflation calculator. This will automatically update each quarter as the new datasets are released.

The CPI data goes back to 1948. Using dates before this will result in a NaN.

To access the raw CPI data as a pandas DataFrame, use this function:

df = ausdex.latest_cpi_df()

The Excel spreadsheet for this is stored in the user's cache directory. If you wish to download this Excel file to a specific location, use this function:

ausdex.files.cached_download_cpi(local_path="cpi-data.xlsx")

For more infomation about the methods to download data from the ABS, see the API specification.

Contributing

See the guidelines for contributing and our code of conduct in the documentation.

License and Disclaimer

ausdex is released under the Apache 2.0 license.

While every effort has been made by the authors of this package to ensure that the data and calculations used to produce the results are accurate, as is stated in the license, we accept no liability or responsibility for the accuracy or completeness of the calculations. We recommend that users exercise their own care and judgment with respect to the use of this package.

Credits

ausdex was written by Dr Robert Turnbull and Dr Jonathan Garber from the Melbourne Data Analytics Platform.

Please cite from the article when it is released. Details to come soon.

Acknowledgements

This project came about through a research collaboration with Dr Vidal Paton-Cole and Prof Robert Crawford. We acknowledge the support of our colleagues at the Melbourne Data Analytics Platform: Dr Aleksandra Michalewicz and Dr Emily Fitzgerald.

Metadata

Release files for ausdex 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ausdex 1.2.0
File Size Uploaded
ausdex-1.2.0.tar.gz 18.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ausdex 1.2.0
File Interpreter ABI Platform
ausdex-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 36.5 kB

Release files / ausdex-1.2.0.tar.gz

Download URL ausdex-1.2.0.tar.gz
Size 18.3 kB
Tags Source
SHA-256 checksum
How to use checksums
be756bc76eee83b25f88a51d3e93996165478035329bf2476874321fabd5c46c
BLAKE2b-256 checksum
How to use checksums
f18088bec50c0fc67dbc72e16e73e3d05a2edcf51005d7d35e4e09ffe01ff0a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.2 CPython/3.10.8 Darwin/22.1.0

Release files / ausdex-1.2.0-py3-none-any.whl

Download URL ausdex-1.2.0-py3-none-any.whl
Size 18.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9d88ce97c6797ded02ae3bb80728ea293e2127f8cf65be156dd5789f6eed04d1
BLAKE2b-256 checksum
How to use checksums
c0a5949152ffe37085464e1d1b4c80eb93d7437be7d55808b5359323d6ca1e98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.2 CPython/3.10.8 Darwin/22.1.0

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.2.2

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page