{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import lasio\n", "import os\n", "\n", "l = lasio.read(os.path.join(\"..\", \"tests\", \"examples\", \"6038187_v1.2_short.las\"))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The information in a LAS file's header is all parsed and available through the sections of the header.\n", "\n", "So to start at the top and view the ~Version section:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[HeaderItem(mnemonic=VERS, unit=, value=2.0, descr=CWLS LOG ASCII STANDARD - VERSION 2.0, original_mnemonic=VERS),\n", " HeaderItem(mnemonic=WRAP, unit=, value=NO, descr=ONE LINE PER DEPTH STEP, original_mnemonic=WRAP)]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l.version" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "each item here is a HeaderItem, which is a kind of [attribute dictionary](https://pypi.python.org/pypi/attrdict) - very easy to use either through items or attributes:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "HeaderItem(mnemonic=VERS, unit=, value=2.0, descr=CWLS LOG ASCII STANDARD - VERSION 2.0, original_mnemonic=VERS)" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l.version.VERS" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "HeaderItem(mnemonic=VERS, unit=, value=2.0, descr=CWLS LOG ASCII STANDARD - VERSION 2.0, original_mnemonic=VERS)" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l.version['VERS']" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[HeaderItem(mnemonic=STRT, unit=M, value=0.05, descr=FIRST INDEX VALUE, original_mnemonic=STRT),\n", " HeaderItem(mnemonic=STOP, unit=M, value=136.6, descr=LAST INDEX VALUE, original_mnemonic=STOP),\n", " HeaderItem(mnemonic=STEP, unit=M, value=0.05, descr=STEP, original_mnemonic=STEP),\n", " HeaderItem(mnemonic=NULL, unit=, value=-99999, descr=NULL VALUE, original_mnemonic=NULL),\n", " HeaderItem(mnemonic=COMP, unit=, value=, descr=COMP, original_mnemonic=COMP),\n", " HeaderItem(mnemonic=WELL, unit=, value=Scorpio E1, descr=WELL, original_mnemonic=WELL),\n", " HeaderItem(mnemonic=FLD, unit=, value=, descr=, original_mnemonic=FLD),\n", " HeaderItem(mnemonic=LOC, unit=, value=Mt Eba, descr=LOC, original_mnemonic=LOC),\n", " HeaderItem(mnemonic=SRVC, unit=, value=, descr=, original_mnemonic=SRVC),\n", " HeaderItem(mnemonic=CTRY, unit=, value=, descr=, original_mnemonic=CTRY),\n", " HeaderItem(mnemonic=STAT, unit=, value=SA, descr=STAT, original_mnemonic=STAT),\n", " HeaderItem(mnemonic=CNTY, unit=, value=, descr=, original_mnemonic=CNTY),\n", " HeaderItem(mnemonic=DATE, unit=, value=15/03/2015, descr=DATE, original_mnemonic=DATE),\n", " HeaderItem(mnemonic=UWI, unit=, value=6038-187, descr=WUNT, original_mnemonic=UWI)]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l.well" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's say we'd like to add some information about the country this log was taken in.\n", "\n", "We can do it easily by directly assigning the values:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [], "source": [ "l.well.CTRY = 'Australia'" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "HeaderItem(mnemonic=CTRY, unit=, value=Australia, descr=, original_mnemonic=CTRY)" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l.well.CTRY" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's have a look at the curves" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[CurveItem(mnemonic=DEPT, unit=M, value=, descr=DEPTH, original_mnemonic=DEPT, data.shape=(121L,)),\n", " CurveItem(mnemonic=CALI, unit=MM, value=, descr=CALI, original_mnemonic=CALI, data.shape=(121L,)),\n", " CurveItem(mnemonic=DFAR, unit=G/CM3, value=, descr=DFAR, original_mnemonic=DFAR, data.shape=(121L,)),\n", " CurveItem(mnemonic=DNEAR, unit=G/CM3, value=, descr=DNEAR, original_mnemonic=DNEAR, data.shape=(121L,)),\n", " CurveItem(mnemonic=GAMN, unit=GAPI, value=, descr=GAMN, original_mnemonic=GAMN, data.shape=(121L,)),\n", " CurveItem(mnemonic=NEUT, unit=CPS, value=, descr=NEUT, original_mnemonic=NEUT, data.shape=(121L,)),\n", " CurveItem(mnemonic=PR, unit=OHM/M, value=, descr=PR, original_mnemonic=PR, data.shape=(121L,)),\n", " CurveItem(mnemonic=SP, unit=MV, value=, descr=SP, original_mnemonic=SP, data.shape=(121L,)),\n", " CurveItem(mnemonic=COND, unit=MS/M, value=, descr=COND, original_mnemonic=COND, data.shape=(121L,))]" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l.curves" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice the units for PR are incorrect - to change that access the unit attribute directly:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": true }, "outputs": [], "source": [ "l.curves.PR.unit = 'ohmm'" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "CurveItem(mnemonic=PR, unit=ohmm, value=, descr=PR, original_mnemonic=PR, data.shape=(121L,))" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l.curves.PR" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And finally the Parameter section:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[HeaderItem(mnemonic=BS, unit=, value=216 mm, descr=BS, original_mnemonic=BS),\n", " HeaderItem(mnemonic=JOBN, unit=, value=, descr=JOBN, original_mnemonic=JOBN),\n", " HeaderItem(mnemonic=WPMT, unit=, value=, descr=WPMT, original_mnemonic=WPMT),\n", " HeaderItem(mnemonic=AGL, unit=, value=, descr=AGL, original_mnemonic=AGL),\n", " HeaderItem(mnemonic=PURP, unit=, value=Cased hole stratigraphy, descr=PURP, original_mnemonic=PURP),\n", " HeaderItem(mnemonic=X, unit=, value=560160, descr=X, original_mnemonic=X),\n", " HeaderItem(mnemonic=CSGL, unit=, value=0 m - 135 m, descr=CSGL, original_mnemonic=CSGL),\n", " HeaderItem(mnemonic=UNIT, unit=, value=, descr=UNIT, original_mnemonic=UNIT),\n", " HeaderItem(mnemonic=Y, unit=, value=6686430, descr=Y, original_mnemonic=Y),\n", " HeaderItem(mnemonic=TDL, unit=, value=135.2 m, descr=TDL, original_mnemonic=TDL),\n", " HeaderItem(mnemonic=PROD, unit=, value=, descr=PROD, original_mnemonic=PROD),\n", " HeaderItem(mnemonic=MUD, unit=, value=Water, descr=MUD, original_mnemonic=MUD),\n", " HeaderItem(mnemonic=CSGS, unit=, value=100 mm, descr=CSGS, original_mnemonic=CSGS),\n", " HeaderItem(mnemonic=ENG, unit=, value=, descr=ENG, original_mnemonic=ENG),\n", " HeaderItem(mnemonic=STEP, unit=, value=5 cm, descr=STEP, original_mnemonic=STEP),\n", " HeaderItem(mnemonic=FluidLevel, unit=, value=54 m, descr=FluidLevel, original_mnemonic=FluidLevel),\n", " HeaderItem(mnemonic=CSGT, unit=, value=PVC, descr=CSGT, original_mnemonic=CSGT),\n", " HeaderItem(mnemonic=WIT, unit=, value=, descr=WIT, original_mnemonic=WIT),\n", " HeaderItem(mnemonic=EREF, unit=, value=, descr=EREF, original_mnemonic=EREF),\n", " HeaderItem(mnemonic=PROJ, unit=, value=, descr=PROJ, original_mnemonic=PROJ),\n", " HeaderItem(mnemonic=ZONE, unit=, value=53J, descr=ZONE, original_mnemonic=ZONE),\n", " HeaderItem(mnemonic=DREF, unit=, value=GL, descr=DREF, original_mnemonic=DREF),\n", " HeaderItem(mnemonic=TDD, unit=, value=136 m, descr=TDD, original_mnemonic=TDD)]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l.params" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you'd prefer to see a section as a dictionary you can with the ``dictview()`` method:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "{'AGL': '',\n", " 'BS': '216 mm',\n", " 'CSGL': '0 m - 135 m',\n", " 'CSGS': '100 mm',\n", " 'CSGT': 'PVC',\n", " 'DREF': 'GL',\n", " 'ENG': '',\n", " 'EREF': '',\n", " 'FluidLevel': '54 m',\n", " 'JOBN': '',\n", " 'MUD': 'Water',\n", " 'PROD': '',\n", " 'PROJ': '',\n", " 'PURP': 'Cased hole stratigraphy',\n", " 'STEP': '5 cm',\n", " 'TDD': '136 m',\n", " 'TDL': '135.2 m',\n", " 'UNIT': '',\n", " 'WIT': '',\n", " 'WPMT': '',\n", " 'X': 560160,\n", " 'Y': 6686430,\n", " 'ZONE': '53J'}" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l.params.dictview()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.11" } }, "nbformat": 4, "nbformat_minor": 0 }