Skip to main content

IAAO-compliant Ratio Studies for real-property valuation analysis

Project description

Ratio Study for Computer Assisted Mass Appraisal (CAMA) models

Ratio-Study is software package for Python developed by the Municipal Property Assessment Corporation (MPAC) of Ontario, Canada. It has been developed and is maintained by ASMA-DS: the Data Science team within the Assessment Standards and Mass Appraisal Department at MPAC.

This package provides a comprehensive suite of functions for evaluating Computer Assisted Mass Appraisal (CAMA) real estate valuation models. These functions comprise but are not limited to the International Association of Assessing Officers (IAAO)' Standard on Ratio Studies, as well as recent advances in this area.

Backend support (pandas / polars / pyarrow)

The package is backend-agnostic thanks to narwhals. Public functions (ratios, rts_calculator, asr_median, cod, prd, prb, rmse, mae, CoC, CoV_adj, vei_analysis, ve_bands, gini_stats, gini_decomp, gini_factors, bo_decompose, bo_multi_decomposition, compare_ratios, etc.) accept any of the following:

  • pandas.DataFrame (default)
  • polars.DataFrame
  • pyarrow.Table
  • A narwhals-wrapped frame (narwhals.DataFrame / narwhals.LazyFrame)
  • 1D values can be any of: numpy.ndarray, pandas.Series, polars.Series, narwhals.Series, or a plain list.

Where the input is a polars / pyarrow / narwhals frame, the result is returned in the same backend so you can keep your pipeline native.

A few third-party libraries remain pandas-only, so the package converts at the function boundary where needed:

  • seaborn (used in graphs.py)
  • xlsxwriter via pd.ExcelWriter (used in reporting.py)
  • statsmodels.formula.api.ols (used in gini_factors)
import polars as pl
from ratio_study import ratios, load_sample_dataset

# Load a polars DataFrame from the bundled parquet sample
df = load_sample_dataset("polars")

# Compute IAAO ratio indicators — result is a polars.DataFrame
result = ratios(
    df,
    market_value_header="time_adjusted_sale_price",
    assessment_header="assessment_value_new",
    list_of_indicators=["Median", "Mean", "CoD", "PRD", "PRB"],
    group_by="property_type",
)
print(result.to_dicts())

References

IAAO's Standard on Ratio Studies available at https://www.iaao.org/media/standards/Standard_on_Ratio_Studies.pdf

Thomas J. DiCiccio. Bradley Efron. "Bootstrap confidence intervals." Statist. Sci. 11 (3) 189 - 228, August 1996. https://doi.org/10.1214/ss/1032280214

Quintos, C. (2020). A Gini measure for vertical equity in property assessments. Journal of Property Tax Assessment & Administration, 17(2). Retrieved from https://researchexchange.iaao.org/jptaa/vol17/iss2/2

Quintos, C. (2021). A Gini decomposition of the sources of inequality in property assessments. Journal of Property Tax Assessment & Administration, 18(2). Retrieved from https://researchexchange.iaao.org/jptaa/vol18/iss2/6

Formulas on article by David Zaslavsky, retrieved from https://www.ellipsix.net/blog/2012/11/the-gini-coefficient-for-distribution-inequality.html

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ratio_study-0.3.5.tar.gz (668.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ratio_study-0.3.5-py3-none-any.whl (667.0 kB view details)

Uploaded Python 3

File details

Details for the file ratio_study-0.3.5.tar.gz.

File metadata

  • Download URL: ratio_study-0.3.5.tar.gz
  • Upload date:
  • Size: 668.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.5

File hashes

Hashes for ratio_study-0.3.5.tar.gz
Algorithm Hash digest
SHA256 94e913680fbc3cc10c89a2d3f472c9569e73dff241aa5913d38ada9df054b722
MD5 9105ea1cd9189f194c965315e79e75c8
BLAKE2b-256 f8c6efb0dc284d43ad6b3adc1e0fde9e1d0a1bca3c439a543f07945082ed61da

See more details on using hashes here.

File details

Details for the file ratio_study-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: ratio_study-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 667.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.5

File hashes

Hashes for ratio_study-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 4e27d3caeac03b3a0f51071a8acdd0af634aba3aae674abe89f02e8ed973ac1b
MD5 94ea4b41f47e5a9bf47bda7259e6fa4d
BLAKE2b-256 627b25b579f93b21b8526a88c341a4eb352a456bba8b52c505dbaea0ca388534

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page