# OpenAVMKit
[](https://pypi.org/project/openavmkit/)

[](https://github.com/larsiusprime/openavmkit/actions/workflows/ci.yml)
OpenAVMKit is a python library for real estate mass appraisal. It includes modules for data cleaning, data enrichment, modeling, and statistical evaluation of predictive models. It also includes Jupyter notebooks that model typical workflows.
See the [Changelog](CHANGELOG.md)
# Table of Contents
## 1. Getting started
- [Install from PyPI](docs/docs/getting_started.md#option-1---install-from-pypi)
- [Install from Git](docs/docs/getting_started.md#option-2---install-from-git)
- [Running Tests](docs/docs/getting_started.md#running-tests)
- [Running your first locality](docs/docs/getting_started.md#running-your-first-locality)
## 2. The basics
- [Creating a new locality](docs/docs/the_basics.md#creating-a-new-locality)
- [Code modules](docs/docs/the_basics.md#code-modules)
- [Jupyter Notebooks](docs/docs/the_basics.md#using-the-jupyter-notebooks)
- [Terminology](docs/docs/the_basics.md#terminology)
## 3. Configuration
- [Cloud storage](docs/docs/config.md#configuring-cloud-storage)
- [PDF report generation](docs/docs/config.md#configuring-pdf-report-generation)
- [US Census API](docs/docs/config.md#configuring-census-api-access)
- [Open Street Map API](docs/docs/config.md#configuring-openstreetmap-enrichment)
## 4. Legal
- [Contributing](CONTRIBUTING.md)
- [License](LICENSE)
- [License Philosophy](LICENSE-PHILOSOPHY.md)
Raw data
{
"_id": null,
"home_page": null,
"name": "openavmkit",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "avm, mass appraisal, valuation, gis, real estate",
"author": null,
"author_email": "\"Lars A. Doucet\" <lars.doucet+openavmkit@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/10/ea/c5ec5983988fe08baa4bf0297c68579400fb275c4d6b6d41ad98d494c29a/openavmkit-0.4.0.tar.gz",
"platform": null,
"description": "# OpenAVMKit\n\n[](https://pypi.org/project/openavmkit/)\n\n[](https://github.com/larsiusprime/openavmkit/actions/workflows/ci.yml)\n\nOpenAVMKit is a python library for real estate mass appraisal. It includes modules for data cleaning, data enrichment, modeling, and statistical evaluation of predictive models. It also includes Jupyter notebooks that model typical workflows.\n\nSee the [Changelog](CHANGELOG.md)\n\n# Table of Contents\n\n## 1. Getting started\n - [Install from PyPI](docs/docs/getting_started.md#option-1---install-from-pypi)\n - [Install from Git](docs/docs/getting_started.md#option-2---install-from-git)\n - [Running Tests](docs/docs/getting_started.md#running-tests)\n - [Running your first locality](docs/docs/getting_started.md#running-your-first-locality)\n## 2. The basics\n - [Creating a new locality](docs/docs/the_basics.md#creating-a-new-locality)\n - [Code modules](docs/docs/the_basics.md#code-modules)\n - [Jupyter Notebooks](docs/docs/the_basics.md#using-the-jupyter-notebooks)\n - [Terminology](docs/docs/the_basics.md#terminology)\n## 3. Configuration\n - [Cloud storage](docs/docs/config.md#configuring-cloud-storage)\n - [PDF report generation](docs/docs/config.md#configuring-pdf-report-generation)\n - [US Census API](docs/docs/config.md#configuring-census-api-access)\n - [Open Street Map API](docs/docs/config.md#configuring-openstreetmap-enrichment)\n## 4. Legal\n - [Contributing](CONTRIBUTING.md)\n - [License](LICENSE)\n - [License Philosophy](LICENSE-PHILOSOPHY.md)\n",
"bugtrack_url": null,
"license": null,
"summary": "Open-source automated valuation model (AVM) toolkit",
"version": "0.4.0",
"project_urls": {
"Changelog": "https://github.com/larsiusprime/openavmkit/blob/master/CHANGELOG.md",
"Homepage": "https://www.openavmkit.com/",
"Issues": "https://github.com/larsiusprime/openavmkit/issues",
"Source": "https://github.com/larsiusprime/openavmkit"
},
"split_keywords": [
"avm",
" mass appraisal",
" valuation",
" gis",
" real estate"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "f09528524ce34599657f1850c05f9250e6e3ca7b7440067f3b7c40be661d279b",
"md5": "8c19df7d1d49e496364597e8f29935f3",
"sha256": "11e37bb1e34039afa56b653bfd50c1d40da75b15abd111865ce37c4d28e98e03"
},
"downloads": -1,
"filename": "openavmkit-0.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8c19df7d1d49e496364597e8f29935f3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 316629,
"upload_time": "2025-10-06T18:14:43",
"upload_time_iso_8601": "2025-10-06T18:14:43.587276Z",
"url": "https://files.pythonhosted.org/packages/f0/95/28524ce34599657f1850c05f9250e6e3ca7b7440067f3b7c40be661d279b/openavmkit-0.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "10eac5ec5983988fe08baa4bf0297c68579400fb275c4d6b6d41ad98d494c29a",
"md5": "08955081e0b6dcd4acf8235be4d13d59",
"sha256": "c3aa67864d397b926c3104cb1c514ea12b47a2521e0f1b7063572fc5177c582f"
},
"downloads": -1,
"filename": "openavmkit-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "08955081e0b6dcd4acf8235be4d13d59",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 6121538,
"upload_time": "2025-10-06T18:14:45",
"upload_time_iso_8601": "2025-10-06T18:14:45.790160Z",
"url": "https://files.pythonhosted.org/packages/10/ea/c5ec5983988fe08baa4bf0297c68579400fb275c4d6b6d41ad98d494c29a/openavmkit-0.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-06 18:14:45",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "larsiusprime",
"github_project": "openavmkit",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "azure-storage-blob",
"specs": [
[
"==",
"12.26.0"
]
]
},
{
"name": "catboost",
"specs": [
[
"==",
"1.2.8"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"1.26.4"
]
]
},
{
"name": "huggingface-hub",
"specs": [
[
"==",
"0.29.1"
]
]
},
{
"name": "lightgbm",
"specs": [
[
"==",
"4.6.0"
]
]
},
{
"name": "markdown",
"specs": [
[
"==",
"3.7"
]
]
},
{
"name": "mgwr",
"specs": [
[
"==",
"2.2.1"
]
]
},
{
"name": "optuna",
"specs": [
[
"==",
"4.1.0"
]
]
},
{
"name": "osmnx",
"specs": [
[
"==",
"2.0.1"
]
]
},
{
"name": "paramiko",
"specs": [
[
"==",
"3.5.1"
]
]
},
{
"name": "pdfkit",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "pipreqs",
"specs": [
[
"==",
"0.5.0"
]
]
},
{
"name": "polars",
"specs": [
[
"==",
"1.17.1"
]
]
},
{
"name": "pyarrow",
"specs": [
[
"==",
"18.0.0"
]
]
},
{
"name": "pytest",
"specs": [
[
"==",
"8.3.4"
]
]
},
{
"name": "python-dotenv",
"specs": [
[
"==",
"1.0.1"
]
]
},
{
"name": "rich",
"specs": [
[
"==",
"13.9.4"
]
]
},
{
"name": "seaborn",
"specs": [
[
"==",
"0.13.2"
]
]
},
{
"name": "statsmodels",
"specs": [
[
"==",
"0.14.4"
]
]
},
{
"name": "xgboost",
"specs": [
[
"==",
"2.1.4"
]
]
},
{
"name": "xlsxwriter",
"specs": [
[
"==",
"3.1.9"
]
]
},
{
"name": "census",
"specs": [
[
"==",
"0.8.23"
]
]
},
{
"name": "shap",
"specs": [
[
"==",
"0.47.2"
]
]
},
{
"name": "mpld3",
"specs": [
[
"==",
"0.5.10"
]
]
},
{
"name": "hilbertcurve",
"specs": [
[
"==",
"2.0.5"
]
]
},
{
"name": "optuna-integration",
"specs": [
[
"==",
"4.5.0"
]
]
},
{
"name": "pygam",
"specs": [
[
"~=",
"0.10.1"
]
]
},
{
"name": "pandas",
"specs": [
[
"~=",
"2.3.3"
]
]
},
{
"name": "ipython",
"specs": [
[
"~=",
"8.12.3"
]
]
},
{
"name": "geopandas",
"specs": [
[
"~=",
"1.0.1"
]
]
},
{
"name": "matplotlib",
"specs": [
[
"~=",
"3.10.6"
]
]
},
{
"name": "pyproj",
"specs": [
[
"~=",
"3.7.1"
]
]
},
{
"name": "shapely",
"specs": [
[
"~=",
"2.1.0"
]
]
},
{
"name": "azure-core",
"specs": [
[
"~=",
"1.32.0"
]
]
},
{
"name": "requests",
"specs": [
[
"~=",
"2.32.3"
]
]
},
{
"name": "joblib",
"specs": [
[
"~=",
"1.4.2"
]
]
},
{
"name": "scipy",
"specs": [
[
">=",
"1.11.4"
],
[
"<",
"1.12"
]
]
},
{
"name": "scikit-learn",
"specs": [
[
"~=",
"1.6.1"
]
]
},
{
"name": "tqdm",
"specs": [
[
"~=",
"4.67.1"
]
]
}
],
"lcname": "openavmkit"
}