geost


Namegeost JSON
Version 0.2.3 PyPI version JSON
download
home_pageNone
SummaryThe Python interface for geological point data in The Netherlands
upload_time2024-09-04 10:58:33
maintainerNone
docs_urlNone
authorNone
requires_python>=3.12
licenseMIT License Copyright (c) Deltares Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords geost bro borehole well log cpt geology subsurface toolbox deltares
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # GeoST - Geological Subsurface Toolbox
[![PyPI version](https://img.shields.io/pypi/v/geost.svg)](https://pypi.org/project/geost)
[![License: MIT](https://img.shields.io/pypi/l/imod)](https://choosealicense.com/licenses/mit)
[![Lifecycle: experimental](https://lifecycle.r-lib.org/articles/figures/lifecycle-experimental.svg)](https://lifecycle.r-lib.org/articles/stages.html)
[![Build: status](https://img.shields.io/github/actions/workflow/status/deltares-research/geost/ci.yml)](https://github.com/Deltares-research/geost/actions)
[![codecov](https://codecov.io/gh/Deltares-research/geost/graph/badge.svg?token=HCNGLWTQ2H)](https://codecov.io/gh/Deltares-research/geost)
[![Formatting: ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/charliermarsh/ruff)

The Geological Subsurface Toolbox (GeoST) package is designed to be an easy-to-use Python interface for working with subsurface point data in The Netherlands (boreholes, well logs and CPT's). It provides selection, analysis and export methods that can be applied generically to the loaded data. It is designed to connect with other Deltares developments such as [iMod](https://github.com/Deltares/imod-python) and [DataFusionTools](https://publicwiki.deltares.nl/display/TKIP/Data+Fusion+Tools).

The internal BoreholeCollection, LogCollection and CptCollection classes use [Pandas](https://pandas.pydata.org/) for storing data and header information. It utilizes a custom, lightweight validation module inspired by the [Pandera](https://pandera.readthedocs.io/en/stable/) API. For spatial functions [Geopandas](https://geopandas.org/en/stable/) is used. The package also supports reading/writing parquet and geoparquet files through Pandas and Geopandas respectively. 

GeoST is a work-in-progress and currently supports a limited number of data sources.

## Installation (user)
In a Python >= 3.12 environment, install the latest stable release using pip:

    pip install geost

Or the latest (experimental) version of the main branch directly from GitHub using:

    pip install git+https://github.com/Deltares-research/geost.git

## Installation (developer)
We use [Pixi](https://github.com/prefix-dev/pixi) for package management and workflows.

With pixi installed, navigate to the folder of the cloned repository and run the following 
to install all GeoST dependencies:

    pixi install

Next install GeoST in editable mode by running the pixi task 'install':

    pixi run install

See the [Pixi documentation](https://pixi.sh/latest/) for more information.

## Examples
We collect examples that make use of GeoST and other Subsurface Toolbox developments in 
the [Deltares sst-examples repository](https://github.com/Deltares-research/sst-examples). 

## Supported borehole and CPT formats
- From local files
    - geost .parquet file (complete)
    - Dino csv geological boreholes (complete)
    - Dino XML geological boreholes (planned)
    - BRO XML geotechnical boreholes (planned)
    - BRO XML soil boreholes (planned)
    - GEF boreholes (planned)
    - GEF CPT's (complete)
    - BRO XML CPT's (planned)
    - BRO geopackage CPT's (planned)
    - Well log LAS files (planned)
    - Well log ASCII files (planned)
- Directly from the BRO (REST API) (all planned)
    - CPT
    - BHR-P
    - BHR-GT
    - BHR-G

## Features
After loading data from one of the supported formats it will automatically be validated. If the validation is succesful, a Collection object will be returned depending on your input data type (mixed CPT/well log/borehole collections are not allowed). A collection object consists of two main attributes: the **header** and **data**. The header contains a table with one entry per object and provides information about the name, location, surface level, and borehole/log/cpt start and end depths. The data attribute is a table that includes the data for every described layer (boreholes) or measurement (well logs, cpt's).

The collection object comes with a comprehensive set of methods that can be applied generically while ensuring that the header and data remain synchronized:

- Selection/slicing methods (e.g., objects within bounding box, within or close to geometries, based on depth and other conditions)   
- Export methods (e.g. to csv, parquet, geopackage, VTK, DataFusionTools, Kingdom* , etc)
- Datafusion methods (e.g. combining collections*, combining with data from maps, conversion of description protocols*)
- Miscellaneous methods (e.g. changing vertical/horizontal position reference system)

For a better overview of basic functionality, see the [Basics Tutorial](https://github.com/Deltares-research/geost/tree/main/tutorials).

## Contributing

You can contribute by testing, raising issues and making pull requests. Some general guidelines:

- Use new branches for developing new features or bugfixes. Use prefixes such as feature/ bugfix/ experimental/ to indicate the type of branch
- Add unit tests (and test data) for new methods and functions. We use pytest.
- Add Numpy-style docstrings
- Use Black formatting with default line lenght (88 characters)
- Update requirement.txt en environment.yml files if required

## License
MIT license (Note: may change to a copyleft license in the future, depending on Deltares management decisions)


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "geost",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": "Erik van Onselen <erik.vanonselen@deltares.nl>, Bas Knaake <bas.knaake@deltares.nl>",
    "keywords": "geost, bro, borehole, well log, cpt, geology, subsurface toolbox, deltares",
    "author": null,
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/c6/e5/4cd72c6052b348223bb2aa2c2e8d5fadea2f228fcc2f78a9d8082a73ee27/geost-0.2.3.tar.gz",
    "platform": null,
    "description": "# GeoST - Geological Subsurface Toolbox\n[![PyPI version](https://img.shields.io/pypi/v/geost.svg)](https://pypi.org/project/geost)\n[![License: MIT](https://img.shields.io/pypi/l/imod)](https://choosealicense.com/licenses/mit)\n[![Lifecycle: experimental](https://lifecycle.r-lib.org/articles/figures/lifecycle-experimental.svg)](https://lifecycle.r-lib.org/articles/stages.html)\n[![Build: status](https://img.shields.io/github/actions/workflow/status/deltares-research/geost/ci.yml)](https://github.com/Deltares-research/geost/actions)\n[![codecov](https://codecov.io/gh/Deltares-research/geost/graph/badge.svg?token=HCNGLWTQ2H)](https://codecov.io/gh/Deltares-research/geost)\n[![Formatting: ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/charliermarsh/ruff)\n\nThe Geological Subsurface Toolbox (GeoST) package is designed to be an easy-to-use Python interface for working with subsurface point data in The Netherlands (boreholes, well logs and CPT's). It provides selection, analysis and export methods that can be applied generically to the loaded data. It is designed to connect with other Deltares developments such as [iMod](https://github.com/Deltares/imod-python) and [DataFusionTools](https://publicwiki.deltares.nl/display/TKIP/Data+Fusion+Tools).\n\nThe internal BoreholeCollection, LogCollection and CptCollection classes use [Pandas](https://pandas.pydata.org/) for storing data and header information. It utilizes a custom, lightweight validation module inspired by the [Pandera](https://pandera.readthedocs.io/en/stable/) API. For spatial functions [Geopandas](https://geopandas.org/en/stable/) is used. The package also supports reading/writing parquet and geoparquet files through Pandas and Geopandas respectively. \n\nGeoST is a work-in-progress and currently supports a limited number of data sources.\n\n## Installation (user)\nIn a Python >= 3.12 environment, install the latest stable release using pip:\n\n    pip install geost\n\nOr the latest (experimental) version of the main branch directly from GitHub using:\n\n    pip install git+https://github.com/Deltares-research/geost.git\n\n## Installation (developer)\nWe use [Pixi](https://github.com/prefix-dev/pixi) for package management and workflows.\n\nWith pixi installed, navigate to the folder of the cloned repository and run the following \nto install all GeoST dependencies:\n\n    pixi install\n\nNext install GeoST in editable mode by running the pixi task 'install':\n\n    pixi run install\n\nSee the [Pixi documentation](https://pixi.sh/latest/) for more information.\n\n## Examples\nWe collect examples that make use of GeoST and other Subsurface Toolbox developments in \nthe [Deltares sst-examples repository](https://github.com/Deltares-research/sst-examples). \n\n## Supported borehole and CPT formats\n- From local files\n    - geost .parquet file (complete)\n    - Dino csv geological boreholes (complete)\n    - Dino XML geological boreholes (planned)\n    - BRO XML geotechnical boreholes (planned)\n    - BRO XML soil boreholes (planned)\n    - GEF boreholes (planned)\n    - GEF CPT's (complete)\n    - BRO XML CPT's (planned)\n    - BRO geopackage CPT's (planned)\n    - Well log LAS files (planned)\n    - Well log ASCII files (planned)\n- Directly from the BRO (REST API) (all planned)\n    - CPT\n    - BHR-P\n    - BHR-GT\n    - BHR-G\n\n## Features\nAfter loading data from one of the supported formats it will automatically be validated. If the validation is succesful, a Collection object will be returned depending on your input data type (mixed CPT/well log/borehole collections are not allowed). A collection object consists of two main attributes: the **header** and **data**. The header contains a table with one entry per object and provides information about the name, location, surface level, and borehole/log/cpt start and end depths. The data attribute is a table that includes the data for every described layer (boreholes) or measurement (well logs, cpt's).\n\nThe collection object comes with a comprehensive set of methods that can be applied generically while ensuring that the header and data remain synchronized:\n\n- Selection/slicing methods (e.g., objects within bounding box, within or close to geometries, based on depth and other conditions)   \n- Export methods (e.g. to csv, parquet, geopackage, VTK, DataFusionTools, Kingdom* , etc)\n- Datafusion methods (e.g. combining collections*, combining with data from maps, conversion of description protocols*)\n- Miscellaneous methods (e.g. changing vertical/horizontal position reference system)\n\nFor a better overview of basic functionality, see the [Basics Tutorial](https://github.com/Deltares-research/geost/tree/main/tutorials).\n\n## Contributing\n\nYou can contribute by testing, raising issues and making pull requests. Some general guidelines:\n\n- Use new branches for developing new features or bugfixes. Use prefixes such as feature/ bugfix/ experimental/ to indicate the type of branch\n- Add unit tests (and test data) for new methods and functions. We use pytest.\n- Add Numpy-style docstrings\n- Use Black formatting with default line lenght (88 characters)\n- Update requirement.txt en environment.yml files if required\n\n## License\nMIT license (Note: may change to a copyleft license in the future, depending on Deltares management decisions)\n\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) Deltares  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "The Python interface for geological point data in The Netherlands",
    "version": "0.2.3",
    "project_urls": {
        "Homepage": "https://github.com/Deltares-research/geost",
        "Issues": "https://github.com/Deltares-research/geost/issues",
        "Repository": "https://github.com/Deltares-research/geost"
    },
    "split_keywords": [
        "geost",
        " bro",
        " borehole",
        " well log",
        " cpt",
        " geology",
        " subsurface toolbox",
        " deltares"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "59d6d6f80a309232a1e07abf28cae68ba0a1ba3ec0b8927b6512d5cca4b6c2cc",
                "md5": "c5744e6013d7a5d52c2afad90ac336ed",
                "sha256": "01441fb6126f167293e32c9dc9bf22a0a5c39f3c4f9c530f2ea636f1e322eef2"
            },
            "downloads": -1,
            "filename": "geost-0.2.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c5744e6013d7a5d52c2afad90ac336ed",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 52074,
            "upload_time": "2024-09-04T10:58:32",
            "upload_time_iso_8601": "2024-09-04T10:58:32.512556Z",
            "url": "https://files.pythonhosted.org/packages/59/d6/d6f80a309232a1e07abf28cae68ba0a1ba3ec0b8927b6512d5cca4b6c2cc/geost-0.2.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c6e54cd72c6052b348223bb2aa2c2e8d5fadea2f228fcc2f78a9d8082a73ee27",
                "md5": "c47496f640c63bdcd3f2c14091f17a58",
                "sha256": "272247d156e31d11da7fec66f4e52e9b6b520aeac1cd62c52c1ef1ceecbf4810"
            },
            "downloads": -1,
            "filename": "geost-0.2.3.tar.gz",
            "has_sig": false,
            "md5_digest": "c47496f640c63bdcd3f2c14091f17a58",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 59814,
            "upload_time": "2024-09-04T10:58:33",
            "upload_time_iso_8601": "2024-09-04T10:58:33.911092Z",
            "url": "https://files.pythonhosted.org/packages/c6/e5/4cd72c6052b348223bb2aa2c2e8d5fadea2f228fcc2f78a9d8082a73ee27/geost-0.2.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-04 10:58:33",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Deltares-research",
    "github_project": "geost",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "geost"
}
        
Elapsed time: 0.69332s