Well log mnemonic identification using lasio and dlisio to load LAS/DLIS/ASCII files into DataFrames
Project description
LASMnemonicsID
Well log mnemonic identification and standardization for LAS, DLIS, and ASCII formats
Features
- Multi-format support: LAS, DLIS, ASCII/CSV/TXT/DAT
- Automatic mnemonic standardization: GR, RHOB, NPHI, DT, SP, CALI, RT, etc.
- Batch processing: Parse entire directories recursively
- Customizable naming: Override default standard names
- Case-insensitive extensions: Works with .las/.LAS, .dlis/.DLIS, .csv/.CSV, etc.
- Pandas integration: Returns clean DataFrames ready for analysis
Installation
pip install lasmnemonicsid
This installs support for all formats (LAS, DLIS, ASCII/CSV/TXT).
Quick Start
LAS Files
from LASMnemonicsID import parseLAS
# Parse single LAS file
df = parseLAS("well.las")
print(df.head())
# Parse directory
data = parseLAS("/path/to/las/files/")
for filename, df in data.items():
print(f"{filename}: {df.shape}")
DLIS Files
from LASMnemonicsID import parseDLIS
# Parse single DLIS file
df = parseDLIS("well.dlis")
print(df.columns)
# Parse directory
data = parseDLIS("/path/to/dlis/files/")
ASCII/CSV/TXT Files
from LASMnemonicsID import parseASCII
# Parse CSV
df = parseASCII("well_log.csv", depth_col="DEPTH")
# Parse tab-separated TXT
df = parseASCII("well_log.txt", delimiter="\t")
# Parse directory
data = parseASCII("/path/to/csv/files/")
Advanced Usage
Custom Preferred Names
preferred = {
"deepres": "RT",
"deepres_preferred_original": "AT90",
"gamma": "GR"
}
df = parseLAS("well.las", preferred_names=preferred)
Batch Processing
from pathlib import Path
dir_path = Path("/data/wells/")
data = parseLAS(dir_path, verbose=True, preferred_names=preferred)
for fname, df in data.items():
print(f"{fname}: {df.shape}")
print(df.head(3))
Mixed Format Directories
las_data = parseLAS("/data/wells/")
dlis_data = parseDLIS("/data/wells/")
ascii_data = parseASCII("/data/wells/")
all_data = {**las_data, **dlis_data, **ascii_data}
Supported Mnemonics
The package automatically standardizes these curve types:
| Curve Type | Standard Name | Example Aliases |
|---|---|---|
| Gamma Ray | GR |
gr, cggr, cgr, gam, gamma, gammaray, grc, grd, hgr, sgr, lgr, pgr |
| Spontaneous Potential | SP |
sp, idsp, spr, spl, spdl, spdhp, spc, sp0, sp1, cgsp, dlsp |
| Caliper | CALI |
caliper, calip, cal, dcal, acal, cala, cald, cale, calh, hcal, xcal, ycal |
| Deep Resistivity | RT |
rt, rtao, rt90, ild, idph, rild, rd, ae90, at90, atrt, lld, lldc, res, resd |
| Shallow Resistivity | RXO |
rxo, rxoz, msfl, mcfl, sflcc, mgl, m1rx, r40o, aht10 |
| Density | RHOB |
rhob, rhoz, den, denb, denc, hrho, hrhob, zden, hden, denf, denn |
| Density Correction | DRHO |
dcor, dcorr, dc, decr, drh, zcor, zcorr, hhdr, denscorr |
| Neutron Porosity | NPHI |
cn, phin, cnc, cns, hnphi, nphi, npor, cncc, nprl, neut, neutpor |
| Sonic (Compressional) | DT |
dt, dtc, dtco, dtcomp, deltat, slow, slowness, tt, ac, acco, delt, dtcomp |
| Sonic (Shear) | DTS |
dts, dtsh, dtsm, dtsc, dtsd, dtsqi, dtshear, deltas, tts, stt, dtshear |
| Photoelectric Factor | PEF |
pe, pef, pefz, pdpe, pedf, pedn, hpedn, pe2, pef8, lpe |
Testing
pytest tests/ -v
pytest tests/test_las.py -v
pytest tests/test_dlis.py -v
pytest tests/test_ascii.py -v
API Reference
parseLAS(input_path, verbose=True, preferred_names=None)
Parse LAS file(s) and standardize mnemonics.
Parameters:
- input_path (str/Path): LAS file or directory
- verbose (bool): Print parsing info
- preferred_names (dict): Custom name mappings
Returns: DataFrame (single file) or dict (multiple files)
parseDLIS(input_path, verbose=True, preferred_names=None)
Parse DLIS file(s) and standardize mnemonics.
Parameters:
- input_path (str/Path): DLIS file or directory
- verbose (bool): Print parsing info
- preferred_names (dict): Custom name mappings
Returns: DataFrame (single file) or dict (multiple files)
parseASCII(input_path, verbose=True, preferred_names=None, depth_col="DEPTH", delimiter=",")
Parse ASCII/CSV/TXT file(s) and standardize mnemonics.
Parameters:
- input_path (str/Path): ASCII file or directory
- verbose (bool): Print parsing info
- preferred_names (dict): Custom name mappings
- depth_col (str): Name of depth column
- delimiter (str): Field separator
Returns: DataFrame (single file) or dict (multiple files)
How to Cite
APA
Nobleza Energy. (2026). LASMnemonicsID: Well log mnemonic identification for LAS, DLIS, and ASCII formats [Software]. GitHub. https://github.com/Nobleza-Energy/LASMnemonicsID
BibTeX
@software{LASMnemonicsID,
author = {Nobleza Energy},
title = {LASMnemonicsID: Well log mnemonic identification for LAS, DLIS, and ASCII formats},
year = {2026},
publisher = {GitHub},
url = {https://github.com/Nobleza-Energy/LASMnemonicsID}
}
License
MIT License - see LICENSE file.
Contributing
Contributions welcome! Submit a Pull Request.
Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with ❤️ by Nobleza Energy
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.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lasmnemonicsid-0.0.5.tar.gz.
File metadata
- Download URL: lasmnemonicsid-0.0.5.tar.gz
- Upload date:
- Size: 15.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65ab53cb5e34c2f308b841dd73b1a5da23aa4e728304e2ba23fe346eb6d75046
|
|
| MD5 |
e03fc90dc2f8b831c0f10c09af76c6c2
|
|
| BLAKE2b-256 |
fcd7f3a2e088b495b9d9eb2ff55212c1e926df259325cd2fe2ac6b36c0fc4d04
|
File details
Details for the file lasmnemonicsid-0.0.5-py3-none-any.whl.
File metadata
- Download URL: lasmnemonicsid-0.0.5-py3-none-any.whl
- Upload date:
- Size: 13.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7f8eecf013a08fbe623bd5521a5fa3e6b03488fbfdb2edd53e6e26235cf6a61
|
|
| MD5 |
ab2049897b28a9b1f70768b3f5e247bb
|
|
| BLAKE2b-256 |
9c77bec4361a74b07cd6cca83318d214c0b1f09fce31139c7ced5b868e9ccaa0
|