<jupyter_start><jupyter_text>Read LAS for curves only- Read LAS with `lasio`- Read LAS with `welly`- Get wireline logs in `pandas`<jupyter_code>fname = "../data/NAM/Well_data/Groningen_field/01_Cluster_Wells/Eemskanaal/EKL-__1.las"<jupyter_output><empty_output><jupyter_text>There is not a lot of info in the header:<jupyter_code>!head -55 ../data/NAM/Well_data/Groningen_field/01_Cluster_Wells/Eemskanaal/EKL-__1.las<jupyter_output># LAS format log file from PETREL

# Project units are specified as depth units

#==================================================================

~Version information

VERS.   2.0:

WRAP.   NO:

#==================================================================

~Well

STRT .m      0.0000000000 :

STOP .m      3062.9000000 :

STEP .m     0.10000000 :

NULL .        -999.250000 :

COMP.           : COMPANY

WELL.  EKL-  1   : WELL

FLD.            : FIELD

LOC.            : LOCATION

SRVC.           : SERVICE COMPANY

DATE.  2020-12-04 16:29:54   : Log Export Date {yyyy-MM-dd HH:mm:ss}

PROV.           : PROVINCE

UWI.   11000074112201   : UNIQUE WELL ID

API.            : API NUMBER

#==================================================================

~Curve

DEPT .m                   : DEPTH

DENS .g/cm3               : DENS

DEN .g/cm3                : DEN

FLSO ._                   : FLSO

DT .us/ft                 : DT

SON .us/ft                : S[...]<jupyter_text>Note that the location information is in the `.dev` file. It has:- (x, y) with CRS- KB- Deviation survey- Position log<jupyter_code>!head -20 ../data/NAM/Well_data/Groningen_field/01_Cluster_Wells/Eemskanaal/EKL-__1.dev<jupyter_output># WELL TRACE FROM PETREL 

# WELL NAME:              EKL-  1

# DEFINITIVE SURVEY:      Explicit survey 1

# WELL HEAD X-COORDINATE: 241602.09085816 (m)

# WELL HEAD Y-COORDINATE: 584344.22236241 (m)

# WELL DATUM (KB, Kelly bushing, from MSL): 5.57999992 (m)

# WELL TYPE:              UNDEFINED

# MD AND TVD ARE REFERENCED (=0) AT WELL DATUM AND INCREASE DOWNWARDS

# ANGLES ARE GIVEN IN DEGREES

# XYZ TRACE IS GIVEN IN COORDINATE SYSTEM Amersfoort / RD New [1672_28992] (NL Onshore) [Petrel,700049]

# AZIM_TN: azimuth in True North 

# AZIM_GN: azimuth in Grid North 

# DX DY ARE GIVEN IN GRID NORTH IN m-UNITS

# DEPTH (Z, tvd_z) GIVEN IN m-UNITS

#===============================================================================================================================================

      MD            X            Y            Z           TVD           DX          DY        AZIM_TN        INCL         DLS        AZIM_GN

#=======================================[...]<jupyter_text>With `lasio`<jupyter_code>import lasio

l = lasio.read(fname)
l.header
l.curves<jupyter_output><empty_output><jupyter_text>With `welly`<jupyter_code>from welly import Well

w = Well.from_las(fname)
w.header
w
w.data['GR'].plot()<jupyter_output><empty_output><jupyter_text>To `pandas`<jupyter_code>w.df()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.2148733135899967, 'fraction_numerical': 0.04639684106614018, 'mean_word_length': 2.7346437346437344, 'pattern_counts': {'":': 0, '<': 23, '<?xml version=': 0, '>': 23, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 2, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '6', 'dir': 'jupyter-structured-clean-dedup', 'id': '58672', 'license': 'Apache-2.0', 'n_tokens_mistral': 1212, 'n_tokens_neox': 1058, 'n_words': 251, 'path': 'notebooks/Read_LAS_files.ipynb', 'repo_name': 'agile-geoscience/groningen', 'size': '3039'}