Skip to main content

LASMnemonicsID

LASMnemonicsID Logo

Well log mnemonic identification and standardization for LAS, DLIS, and ASCII formats

PyPI Python Versions License


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


Made with ❤️ by Nobleza Energy

Metadata

Release files for lasmnemonicsid 0.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lasmnemonicsid 0.0.5
File Size Uploaded Provenance Actions
lasmnemonicsid-0.0.5.tar.gz 15.4 kB Without provenance Details for lasmnemonicsid-0.0.5.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for lasmnemonicsid 0.0.5
File Interpreter ABI Platform Actions
lasmnemonicsid-0.0.5-py3-none-any.whl Python 3 none any Details for lasmnemonicsid-0.0.5-py3-none-any.whl

Total release size: 29.3 kB

Release files / lasmnemonicsid-0.0.5.tar.gz

Download URL lasmnemonicsid-0.0.5.tar.gz
Size 15.4 kB
Tags Source
SHA-256 checksum
How to use checksums
65ab53cb5e34c2f308b841dd73b1a5da23aa4e728304e2ba23fe346eb6d75046
BLAKE2b-256 checksum
How to use checksums
fcd7f3a2e088b495b9d9eb2ff55212c1e926df259325cd2fe2ac6b36c0fc4d04
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / lasmnemonicsid-0.0.5-py3-none-any.whl

Download URL lasmnemonicsid-0.0.5-py3-none-any.whl
Size 13.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d7f8eecf013a08fbe623bd5521a5fa3e6b03488fbfdb2edd53e6e26235cf6a61
BLAKE2b-256 checksum
How to use checksums
9c77bec4361a74b07cd6cca83318d214c0b1f09fce31139c7ced5b868e9ccaa0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Security for lasmnemonicsid 0.0.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page