{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import lasio" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "lasio will automatically try and import pandas" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import os\n", "l = lasio.read(os.path.join(\"..\", \"tests\", \"examples\", \"6038187_v1.2.las\"))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If [pandas](http://pandas.pydata.org/) is installed, you can use the df() method to get a pandas [DataFrame](http://pandas.pydata.org/pandas-docs/stable/dsintro.html#dataframe) version of the data section:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "df = l.df()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "pandas.core.frame.DataFrame" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type(df)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "View a snapshot of the dataframe with the `head()` method, which takes number of lines as an argument:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CALIDFARDNEARGAMNNEUTPRSPCOND
DEPT
0.0549.7654.5873.382NaNNaNNaNNaNNaN
0.1049.7654.5873.382-2324.28NaN115.508-3.049-116.998
0.1549.7654.5873.382-2324.28NaN115.508-3.049-116.998
0.2049.7654.5873.382-2324.28NaN115.508-3.049-116.998
0.2549.7654.5873.382-2324.28NaN115.508-3.049-116.998
0.3049.7654.5873.382-2324.28NaN115.508-3.049-116.998
0.3549.7654.5873.382-2324.28NaN115.508-3.049-116.998
0.4049.7654.5873.382-2324.28NaN115.508-3.049-116.998
0.4549.7654.5873.382-2324.28NaN115.508-3.049-116.998
0.5049.7654.5873.382-2324.28NaN115.508-3.049-116.998
\n", "
" ], "text/plain": [ " CALI DFAR DNEAR GAMN NEUT PR SP COND\n", "DEPT \n", "0.05 49.765 4.587 3.382 NaN NaN NaN NaN NaN\n", "0.10 49.765 4.587 3.382 -2324.28 NaN 115.508 -3.049 -116.998\n", "0.15 49.765 4.587 3.382 -2324.28 NaN 115.508 -3.049 -116.998\n", "0.20 49.765 4.587 3.382 -2324.28 NaN 115.508 -3.049 -116.998\n", "0.25 49.765 4.587 3.382 -2324.28 NaN 115.508 -3.049 -116.998\n", "0.30 49.765 4.587 3.382 -2324.28 NaN 115.508 -3.049 -116.998\n", "0.35 49.765 4.587 3.382 -2324.28 NaN 115.508 -3.049 -116.998\n", "0.40 49.765 4.587 3.382 -2324.28 NaN 115.508 -3.049 -116.998\n", "0.45 49.765 4.587 3.382 -2324.28 NaN 115.508 -3.049 -116.998\n", "0.50 49.765 4.587 3.382 -2324.28 NaN 115.508 -3.049 -116.998" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Or look at the data at the bottom of the hole with the similar method ``tail()``:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CALIDFARDNEARGAMNNEUTPRSPCOND
DEPT
134.15101.4081.6281.404-2324.28128.000115.508-3.049581.113
134.20101.4021.5761.411-2324.28158.000115.508-3.049580.619
134.25101.3361.6091.405-2324.28131.000115.508-3.049584.571
134.30101.3301.5961.418-2324.28149.994115.508-3.049594.695
134.35101.3361.6301.417-2324.28139.003115.508-3.049601.612
134.40101.3301.6161.418-2324.28160.000115.508-3.049607.295
134.45101.3131.6151.444-2324.28129.000115.508-3.049608.777
134.50101.3011.5771.383-2324.28171.000115.508-3.049603.343
134.55101.2891.6001.368-2324.28138.010115.508-3.049594.948
134.60101.0371.5551.395-2324.28165.991115.508-3.049584.327
134.65100.9831.5631.357-2324.28158.000115.508-3.049578.643
134.70100.8331.5701.357NaNNaNNaNNaN571.233
134.7593.7601.5821.378NaNNaNNaNNaN565.552
134.8088.0861.5611.361NaNNaNNaNNaN570.490
134.8586.4431.5161.338NaNNaNNaNNaN574.937
134.9079.6175.9891.356NaNNaNNaNNaN579.137
134.9565.2364.5871.397NaNNaNNaNNaNNaN
135.0055.8334.5871.351NaNNaNNaNNaNNaN
135.0549.0614.5871.329NaNNaNNaNNaNNaN
135.1049.036NaNNaNNaNNaNNaNNaNNaN
135.1549.024NaNNaNNaNNaNNaNNaNNaN
135.2049.005NaNNaNNaNNaNNaNNaNNaN
135.2548.999NaNNaNNaNNaNNaNNaNNaN
135.3048.987NaNNaNNaNNaNNaNNaNNaN
135.3548.980NaNNaNNaNNaNNaNNaNNaN
135.4048.962NaNNaNNaNNaNNaNNaNNaN
135.4548.962NaNNaNNaNNaNNaNNaNNaN
135.5048.925NaNNaNNaNNaNNaNNaNNaN
135.5548.931NaNNaNNaNNaNNaNNaNNaN
135.6048.919NaNNaNNaNNaNNaNNaNNaN
135.6548.900NaNNaNNaNNaNNaNNaNNaN
135.7048.882NaNNaNNaNNaNNaNNaNNaN
135.7548.863NaNNaNNaNNaNNaNNaNNaN
135.8048.857NaNNaNNaNNaNNaNNaNNaN
135.8548.839NaNNaNNaNNaNNaNNaNNaN
135.9048.808NaNNaNNaNNaNNaNNaNNaN
135.9548.802NaNNaNNaNNaNNaNNaNNaN
136.0048.789NaNNaNNaNNaNNaNNaNNaN
136.0548.771NaNNaNNaNNaNNaNNaNNaN
136.1048.765NaNNaNNaNNaNNaNNaNNaN
136.1548.752NaNNaNNaNNaNNaNNaNNaN
136.2048.734NaNNaNNaNNaNNaNNaNNaN
136.2548.684NaNNaNNaNNaNNaNNaNNaN
136.3048.666NaNNaNNaNNaNNaNNaNNaN
136.3548.647NaNNaNNaNNaNNaNNaNNaN
136.4048.604NaNNaNNaNNaNNaNNaNNaN
136.4548.555NaNNaNNaNNaNNaNNaNNaN
136.5048.555NaNNaNNaNNaNNaNNaNNaN
136.5548.438NaNNaNNaNNaNNaNNaNNaN
136.60-56.275NaNNaNNaNNaNNaNNaNNaN
\n", "
" ], "text/plain": [ " CALI DFAR DNEAR GAMN NEUT PR SP COND\n", "DEPT \n", "134.15 101.408 1.628 1.404 -2324.28 128.000 115.508 -3.049 581.113\n", "134.20 101.402 1.576 1.411 -2324.28 158.000 115.508 -3.049 580.619\n", "134.25 101.336 1.609 1.405 -2324.28 131.000 115.508 -3.049 584.571\n", "134.30 101.330 1.596 1.418 -2324.28 149.994 115.508 -3.049 594.695\n", "134.35 101.336 1.630 1.417 -2324.28 139.003 115.508 -3.049 601.612\n", "134.40 101.330 1.616 1.418 -2324.28 160.000 115.508 -3.049 607.295\n", "134.45 101.313 1.615 1.444 -2324.28 129.000 115.508 -3.049 608.777\n", "134.50 101.301 1.577 1.383 -2324.28 171.000 115.508 -3.049 603.343\n", "134.55 101.289 1.600 1.368 -2324.28 138.010 115.508 -3.049 594.948\n", "134.60 101.037 1.555 1.395 -2324.28 165.991 115.508 -3.049 584.327\n", "134.65 100.983 1.563 1.357 -2324.28 158.000 115.508 -3.049 578.643\n", "134.70 100.833 1.570 1.357 NaN NaN NaN NaN 571.233\n", "134.75 93.760 1.582 1.378 NaN NaN NaN NaN 565.552\n", "134.80 88.086 1.561 1.361 NaN NaN NaN NaN 570.490\n", "134.85 86.443 1.516 1.338 NaN NaN NaN NaN 574.937\n", "134.90 79.617 5.989 1.356 NaN NaN NaN NaN 579.137\n", "134.95 65.236 4.587 1.397 NaN NaN NaN NaN NaN\n", "135.00 55.833 4.587 1.351 NaN NaN NaN NaN NaN\n", "135.05 49.061 4.587 1.329 NaN NaN NaN NaN NaN\n", "135.10 49.036 NaN NaN NaN NaN NaN NaN NaN\n", "135.15 49.024 NaN NaN NaN NaN NaN NaN NaN\n", "135.20 49.005 NaN NaN NaN NaN NaN NaN NaN\n", "135.25 48.999 NaN NaN NaN NaN NaN NaN NaN\n", "135.30 48.987 NaN NaN NaN NaN NaN NaN NaN\n", "135.35 48.980 NaN NaN NaN NaN NaN NaN NaN\n", "135.40 48.962 NaN NaN NaN NaN NaN NaN NaN\n", "135.45 48.962 NaN NaN NaN NaN NaN NaN NaN\n", "135.50 48.925 NaN NaN NaN NaN NaN NaN NaN\n", "135.55 48.931 NaN NaN NaN NaN NaN NaN NaN\n", "135.60 48.919 NaN NaN NaN NaN NaN NaN NaN\n", "135.65 48.900 NaN NaN NaN NaN NaN NaN NaN\n", "135.70 48.882 NaN NaN NaN NaN NaN NaN NaN\n", "135.75 48.863 NaN NaN NaN NaN NaN NaN NaN\n", "135.80 48.857 NaN NaN NaN NaN NaN NaN NaN\n", "135.85 48.839 NaN NaN NaN NaN NaN NaN NaN\n", "135.90 48.808 NaN NaN NaN NaN NaN NaN NaN\n", "135.95 48.802 NaN NaN NaN NaN NaN NaN NaN\n", "136.00 48.789 NaN NaN NaN NaN NaN NaN NaN\n", "136.05 48.771 NaN NaN NaN NaN NaN NaN NaN\n", "136.10 48.765 NaN NaN NaN NaN NaN NaN NaN\n", "136.15 48.752 NaN NaN NaN NaN NaN NaN NaN\n", "136.20 48.734 NaN NaN NaN NaN NaN NaN NaN\n", "136.25 48.684 NaN NaN NaN NaN NaN NaN NaN\n", "136.30 48.666 NaN NaN NaN NaN NaN NaN NaN\n", "136.35 48.647 NaN NaN NaN NaN NaN NaN NaN\n", "136.40 48.604 NaN NaN NaN NaN NaN NaN NaN\n", "136.45 48.555 NaN NaN NaN NaN NaN NaN NaN\n", "136.50 48.555 NaN NaN NaN NaN NaN NaN NaN\n", "136.55 48.438 NaN NaN NaN NaN NaN NaN NaN\n", "136.60 -56.275 NaN NaN NaN NaN NaN NaN NaN" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.tail(50)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Use the `describe()` method to return basic statistical information about the curves in the dataframe:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CALIDFARDNEARGAMNNEUTPRSPCOND
count2732.0000002701.0000002701.0000002691.0000002492.0000002692.0000002692.0000002697.000000
mean97.4320021.7679221.729209-102.330033441.60001317940.52230790.393464478.670791
std13.9395470.4803330.372412630.106420370.13820822089.29721226.725547753.869866
min-56.2750000.7250000.657001-2324.28000081.001800115.508000-3.049000-116.998000
25%101.0775001.5260001.53500055.783000158.0020002652.47000093.495500200.981000
50%101.4260001.7580001.78500074.376900256.5015002709.34500099.994000266.435000
75%101.5820001.9930001.94800088.326900680.50025050499.900000100.623000505.530000
max103.3800005.9890003.382000169.6720001665.99000050499.900000102.9020004978.160000
\n", "
" ], "text/plain": [ " CALI DFAR DNEAR GAMN NEUT \\\n", "count 2732.000000 2701.000000 2701.000000 2691.000000 2492.000000 \n", "mean 97.432002 1.767922 1.729209 -102.330033 441.600013 \n", "std 13.939547 0.480333 0.372412 630.106420 370.138208 \n", "min -56.275000 0.725000 0.657001 -2324.280000 81.001800 \n", "25% 101.077500 1.526000 1.535000 55.783000 158.002000 \n", "50% 101.426000 1.758000 1.785000 74.376900 256.501500 \n", "75% 101.582000 1.993000 1.948000 88.326900 680.500250 \n", "max 103.380000 5.989000 3.382000 169.672000 1665.990000 \n", "\n", " PR SP COND \n", "count 2692.000000 2692.000000 2697.000000 \n", "mean 17940.522307 90.393464 478.670791 \n", "std 22089.297212 26.725547 753.869866 \n", "min 115.508000 -3.049000 -116.998000 \n", "25% 2652.470000 93.495500 200.981000 \n", "50% 2709.345000 99.994000 266.435000 \n", "75% 50499.900000 100.623000 505.530000 \n", "max 50499.900000 102.902000 4978.160000 " ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.describe()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Calculations are easy in a dataframe. As a simple example, let's convert conductivity to resistivity:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "df['RES'] = 1000 / df.COND" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CALIDFARDNEARGAMNNEUTPRSPCONDRES
DEPT
100.00101.5461.9551.876127.8290237.9972655.3792.957318.8003.136763
100.05101.5401.9881.91990.6593237.0002662.0492.926311.3913.211397
100.10101.5161.9861.91183.6761243.9992651.6292.926306.6973.260547
100.15101.5042.0101.904109.2380237.0012660.5092.938301.2633.319359
100.20101.4741.9931.89792.9720191.0002657.4292.969297.8043.357913
100.25101.4082.0131.90988.3237240.9922656.7492.953298.0513.355130
100.30101.4382.0331.874125.5010218.0072658.6292.957298.7923.346810
100.35101.4861.9651.90890.6533244.9962663.9292.975304.9663.279054
100.40101.5282.0391.93895.2953207.0062666.4992.984311.1413.213977
100.45101.5642.0211.94774.3780189.0002665.4693.005318.3053.141641
100.50101.6002.0271.94872.0534199.9982664.0993.011328.4303.044789
\n", "
" ], "text/plain": [ " CALI DFAR DNEAR GAMN NEUT PR SP COND \\\n", "DEPT \n", "100.00 101.546 1.955 1.876 127.8290 237.997 2655.37 92.957 318.800 \n", "100.05 101.540 1.988 1.919 90.6593 237.000 2662.04 92.926 311.391 \n", "100.10 101.516 1.986 1.911 83.6761 243.999 2651.62 92.926 306.697 \n", "100.15 101.504 2.010 1.904 109.2380 237.001 2660.50 92.938 301.263 \n", "100.20 101.474 1.993 1.897 92.9720 191.000 2657.42 92.969 297.804 \n", "100.25 101.408 2.013 1.909 88.3237 240.992 2656.74 92.953 298.051 \n", "100.30 101.438 2.033 1.874 125.5010 218.007 2658.62 92.957 298.792 \n", "100.35 101.486 1.965 1.908 90.6533 244.996 2663.92 92.975 304.966 \n", "100.40 101.528 2.039 1.938 95.2953 207.006 2666.49 92.984 311.141 \n", "100.45 101.564 2.021 1.947 74.3780 189.000 2665.46 93.005 318.305 \n", "100.50 101.600 2.027 1.948 72.0534 199.998 2664.09 93.011 328.430 \n", "\n", " RES \n", "DEPT \n", "100.00 3.136763 \n", "100.05 3.211397 \n", "100.10 3.260547 \n", "100.15 3.319359 \n", "100.20 3.357913 \n", "100.25 3.355130 \n", "100.30 3.346810 \n", "100.35 3.279054 \n", "100.40 3.213977 \n", "100.45 3.141641 \n", "100.50 3.044789 " ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df[100:100.5]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Convert the depth index to feet:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "df.index = df.index / 0.3048" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that now the units of the indices used on the DataFrame are in feet, and it uses the nearest existing value:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CALIDFARDNEARGAMNNEUTPRSPCONDRES
DEPT
441.108924101.3131.6151.444-2324.28129.000115.508-3.049608.7771.642638
441.272966101.3011.5771.383-2324.28171.000115.508-3.049603.3431.657432
441.437008101.2891.6001.368-2324.28138.010115.508-3.049594.9481.680819
441.601050101.0371.5551.395-2324.28165.991115.508-3.049584.3271.711371
441.765092100.9831.5631.357-2324.28158.000115.508-3.049578.6431.728181
441.929134100.8331.5701.357NaNNaNNaNNaN571.2331.750599
442.09317693.7601.5821.378NaNNaNNaNNaN565.5521.768184
442.25721888.0861.5611.361NaNNaNNaNNaN570.4901.752879
442.42126086.4431.5161.338NaNNaNNaNNaN574.9371.739321
442.58530279.6175.9891.356NaNNaNNaNNaN579.1371.726707
442.74934465.2364.5871.397NaNNaNNaNNaNNaNNaN
442.91338655.8334.5871.351NaNNaNNaNNaNNaNNaN
443.07742849.0614.5871.329NaNNaNNaNNaNNaNNaN
443.24147049.036NaNNaNNaNNaNNaNNaNNaNNaN
443.40551249.024NaNNaNNaNNaNNaNNaNNaNNaN
443.56955449.005NaNNaNNaNNaNNaNNaNNaNNaN
443.73359648.999NaNNaNNaNNaNNaNNaNNaNNaN
443.89763848.987NaNNaNNaNNaNNaNNaNNaNNaN
444.06168048.980NaNNaNNaNNaNNaNNaNNaNNaN
444.22572248.962NaNNaNNaNNaNNaNNaNNaNNaN
444.38976448.962NaNNaNNaNNaNNaNNaNNaNNaN
444.55380648.925NaNNaNNaNNaNNaNNaNNaNNaN
444.71784848.931NaNNaNNaNNaNNaNNaNNaNNaN
444.88189048.919NaNNaNNaNNaNNaNNaNNaNNaN
445.04593248.900NaNNaNNaNNaNNaNNaNNaNNaN
445.20997448.882NaNNaNNaNNaNNaNNaNNaNNaN
445.37401648.863NaNNaNNaNNaNNaNNaNNaNNaN
445.53805848.857NaNNaNNaNNaNNaNNaNNaNNaN
445.70210048.839NaNNaNNaNNaNNaNNaNNaNNaN
445.86614248.808NaNNaNNaNNaNNaNNaNNaNNaN
\n", "
" ], "text/plain": [ " CALI DFAR DNEAR GAMN NEUT PR SP COND \\\n", "DEPT \n", "441.108924 101.313 1.615 1.444 -2324.28 129.000 115.508 -3.049 608.777 \n", "441.272966 101.301 1.577 1.383 -2324.28 171.000 115.508 -3.049 603.343 \n", "441.437008 101.289 1.600 1.368 -2324.28 138.010 115.508 -3.049 594.948 \n", "441.601050 101.037 1.555 1.395 -2324.28 165.991 115.508 -3.049 584.327 \n", "441.765092 100.983 1.563 1.357 -2324.28 158.000 115.508 -3.049 578.643 \n", "441.929134 100.833 1.570 1.357 NaN NaN NaN NaN 571.233 \n", "442.093176 93.760 1.582 1.378 NaN NaN NaN NaN 565.552 \n", "442.257218 88.086 1.561 1.361 NaN NaN NaN NaN 570.490 \n", "442.421260 86.443 1.516 1.338 NaN NaN NaN NaN 574.937 \n", "442.585302 79.617 5.989 1.356 NaN NaN NaN NaN 579.137 \n", "442.749344 65.236 4.587 1.397 NaN NaN NaN NaN NaN \n", "442.913386 55.833 4.587 1.351 NaN NaN NaN NaN NaN \n", "443.077428 49.061 4.587 1.329 NaN NaN NaN NaN NaN \n", "443.241470 49.036 NaN NaN NaN NaN NaN NaN NaN \n", "443.405512 49.024 NaN NaN NaN NaN NaN NaN NaN \n", "443.569554 49.005 NaN NaN NaN NaN NaN NaN NaN \n", "443.733596 48.999 NaN NaN NaN NaN NaN NaN NaN \n", "443.897638 48.987 NaN NaN NaN NaN NaN NaN NaN \n", "444.061680 48.980 NaN NaN NaN NaN NaN NaN NaN \n", "444.225722 48.962 NaN NaN NaN NaN NaN NaN NaN \n", "444.389764 48.962 NaN NaN NaN NaN NaN NaN NaN \n", "444.553806 48.925 NaN NaN NaN NaN NaN NaN NaN \n", "444.717848 48.931 NaN NaN NaN NaN NaN NaN NaN \n", "444.881890 48.919 NaN NaN NaN NaN NaN NaN NaN \n", "445.045932 48.900 NaN NaN NaN NaN NaN NaN NaN \n", "445.209974 48.882 NaN NaN NaN NaN NaN NaN NaN \n", "445.374016 48.863 NaN NaN NaN NaN NaN NaN NaN \n", "445.538058 48.857 NaN NaN NaN NaN NaN NaN NaN \n", "445.702100 48.839 NaN NaN NaN NaN NaN NaN NaN \n", "445.866142 48.808 NaN NaN NaN NaN NaN NaN NaN \n", "\n", " RES \n", "DEPT \n", "441.108924 1.642638 \n", "441.272966 1.657432 \n", "441.437008 1.680819 \n", "441.601050 1.711371 \n", "441.765092 1.728181 \n", "441.929134 1.750599 \n", "442.093176 1.768184 \n", "442.257218 1.752879 \n", "442.421260 1.739321 \n", "442.585302 1.726707 \n", "442.749344 NaN \n", "442.913386 NaN \n", "443.077428 NaN \n", "443.241470 NaN \n", "443.405512 NaN \n", "443.569554 NaN \n", "443.733596 NaN \n", "443.897638 NaN \n", "444.061680 NaN \n", "444.225722 NaN \n", "444.389764 NaN \n", "444.553806 NaN \n", "444.717848 NaN \n", "444.881890 NaN \n", "445.045932 NaN \n", "445.209974 NaN \n", "445.374016 NaN \n", "445.538058 NaN \n", "445.702100 NaN \n", "445.866142 NaN " ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df[441:446]" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "convert back to metres:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": true }, "outputs": [], "source": [ "df.index *= 0.3048" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "and this time let's ask just for the last 10 samples in the file, using the [``iloc`` attribute](http://pandas.pydata.org/pandas-docs/version/0.17.1/generated/pandas.DataFrame.iloc.html)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CALIDFARDNEARGAMNNEUTPRSPCONDRES
DEPT
136.1548.752NaNNaNNaNNaNNaNNaNNaNNaN
136.2048.734NaNNaNNaNNaNNaNNaNNaNNaN
136.2548.684NaNNaNNaNNaNNaNNaNNaNNaN
136.3048.666NaNNaNNaNNaNNaNNaNNaNNaN
136.3548.647NaNNaNNaNNaNNaNNaNNaNNaN
136.4048.604NaNNaNNaNNaNNaNNaNNaNNaN
136.4548.555NaNNaNNaNNaNNaNNaNNaNNaN
136.5048.555NaNNaNNaNNaNNaNNaNNaNNaN
136.5548.438NaNNaNNaNNaNNaNNaNNaNNaN
136.60-56.275NaNNaNNaNNaNNaNNaNNaNNaN
\n", "
" ], "text/plain": [ " CALI DFAR DNEAR GAMN NEUT PR SP COND RES\n", "DEPT \n", "136.15 48.752 NaN NaN NaN NaN NaN NaN NaN NaN\n", "136.20 48.734 NaN NaN NaN NaN NaN NaN NaN NaN\n", "136.25 48.684 NaN NaN NaN NaN NaN NaN NaN NaN\n", "136.30 48.666 NaN NaN NaN NaN NaN NaN NaN NaN\n", "136.35 48.647 NaN NaN NaN NaN NaN NaN NaN NaN\n", "136.40 48.604 NaN NaN NaN NaN NaN NaN NaN NaN\n", "136.45 48.555 NaN NaN NaN NaN NaN NaN NaN NaN\n", "136.50 48.555 NaN NaN NaN NaN NaN NaN NaN NaN\n", "136.55 48.438 NaN NaN NaN NaN NaN NaN NaN NaN\n", "136.60 -56.275 NaN NaN NaN NaN NaN NaN NaN NaN" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.iloc[-10:]" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "CALI 48.555\n", "DFAR NaN\n", "DNEAR NaN\n", "GAMN NaN\n", "NEUT NaN\n", "PR NaN\n", "SP NaN\n", "COND NaN\n", "RES NaN\n", "Name: 136.45, dtype: float64" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.loc[136.45]" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "CALI 48.555\n", "DFAR NaN\n", "DNEAR NaN\n", "GAMN NaN\n", "NEUT NaN\n", "PR NaN\n", "SP NaN\n", "COND NaN\n", "RES NaN\n", "Name: 136.45, dtype: float64" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.iloc[-4]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.3" } }, "nbformat": 4, "nbformat_minor": 1 }