A Python package for exploratory lithology analysis
Project description
Exploratory Lithology Analysis
Analysing driller’s logs is a tedious and repetitive task in many groundwater modelling projects. Automating the process of extracting useful information from driller’s logs allows spending less time on manual data wrangling, more time on its interpretation, and enhances the reproducibility of the analysis.
This package combines features to:
perform natural language processing lithology descriptions in the logs, to detect primary and secondary lithologies
apply supervised machine learning to interpolate lithologies across a 3D grid
visualise interactively the 3D data
License
MIT (see License.txt)
Documentation
Installation
Note that ‘ela’ relies on several external packages, and some can be fiddly to install depending on the version of Python and packages. Below are fairly prescriptive instructions, given in the hope of limiting the risk of issues.
Debian packages for spatial projections
cartopy and possibly other python packages require proj4 version 4.9+ to be installed (libproj-dev). If your debian/ubuntu repo does not suffice (older versions) you may try:
sudo apt-get install -y libc6
wget http://en.archive.ubuntu.com/ubuntu/pool/universe/p/proj/proj-data_4.9.3-2_all.deb
sudo dpkg -i proj-data_4.9.3-2_all.deb
wget http://en.archive.ubuntu.com/ubuntu/pool/universe/p/proj/libproj12_4.9.3-2_amd64.deb
sudo dpkg -i libproj12_4.9.3-2_amd64.deb
wget http://en.archive.ubuntu.com/ubuntu/pool/universe/p/proj/proj-bin_4.9.3-2_amd64.deb
sudo dpkg -i proj-bin_4.9.3-2_amd64.deb
wget http://en.archive.ubuntu.com/ubuntu/pool/universe/p/proj/libproj9_4.9.2-2_amd64.deb
sudo dpkg -i libproj9_4.9.2-2_amd64.deb
wget http://en.archive.ubuntu.com/ubuntu/pool/universe/p/proj/libproj-dev_4.9.3-2_amd64.deb
sudo dpkg -i libproj-dev_4.9.3-2_amd64.deb
Installation of python dependencies with conda
You may want to install Anaconda to install dependencies. Note that I recommend to not let anaconda change your startup file and change the PATH environment. To activate Anaconda you first need: source ~/anaconda3/bin/activate. Then choose a conda environment name.
Optionally you may want to do conda update -n base conda and conda update -n base anaconda-navigator
my_env_name=ELA
conda create --name ${my_env_name} python=3.6
conda activate ${my_env_name}
conda install --name ${my_env_name} rasterio cartopy geopandas pandas nltk scikit-learn scikit-image matplotlib vtk
As of writing (2018-08) conda does not have pyqt5, and a suitable version of mayavi for python3. We use pip
pip install --upgrade pip
pip search pyqt5
pip search mayavi
pip install pyqt5
pip install mayavi
Windows
Placeholder section. As of Sept 2018 it may be possible to install upon Python 3.6+ with Anaconda 3, and then including mayavi from pip.
Installation of pyela
pip install -r requirements.txt
python setup.py install
For Python 2.7.x pyqt5 is not available:
# Note: not sure if conda-forge needed: conda config --add channels conda-forge
conda create --name ${my_env_name} python=2.7 mayavi rasterio cartopy geopandas pandas nltk scikit-learn scikit-image matplotlib vtk
Known issues
As of 2018-08, using mayavi 4.6 on python 3.6 is buggy, a VTK issue it seems. Python 2.7 with mayavi 4.5 via Anaconda2 is known to work.
Troubleshooting
If in a conda environment trying to use pip you get:
ModuleNotFoundError: No module named 'pip._internal'
consider:
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py --force-reinstall
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.