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.3.tar.gz (665.4 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.3-py3-none-any.whl (664.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ratio_study-0.3.3.tar.gz
  • Upload date:
  • Size: 665.4 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.3.tar.gz
Algorithm Hash digest
SHA256 54c44de26f9d80a11bdbef4f58f6ebd059a8567ec88ab0b6321c07995a458c88
MD5 c6f0ae4c852d64d06f848b8fbd2718eb
BLAKE2b-256 1de160b8ba704bc1cad5cc9326f5671c2074b78b25a5bd8726e3409f6ec961d0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ratio_study-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 664.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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 fa821e28c1e9b5cc5b7fd44297c6541b4386aba803a66b3b7b9929edb2c8e86c
MD5 b8afcc05857648d4532188ac69641d70
BLAKE2b-256 022987dabdb66f2fec458e773c3956c96f7003ff7668c3292ca867adae6c1ff9

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