{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Combining Datasets\n", "\n", "Datasets can be combined along the items and time axis" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import mikeio" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Concatenate Datasets (along the time axis)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "dims: (time:97, x:10)\n", "time: 2019-01-01 00:00:00 - 2019-01-03 00:00:00 (97 records)\n", "geometry: Grid1D (n=10, dx=0.06667)\n", "items:\n", " 0: Level (meter)" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ds1 = mikeio.read(\"../tests/testdata/tide1.dfs1\")\n", "ds1" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "dims: (time:97, x:10)\n", "time: 2019-01-02 00:00:00 - 2019-01-04 00:00:00 (97 records)\n", "geometry: Grid1D (n=10, dx=0.06667)\n", "items:\n", " 0: Level (meter)" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ds2 = mikeio.read(\"../tests/testdata/tide2.dfs1\") + 0.5 # add offset\n", "ds2\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Concatenating data along the time axis can be done with `Dataset.concat`" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "dims: (time:145, x:10)\n", "time: 2019-01-01 00:00:00 - 2019-01-04 00:00:00 (145 records)\n", "geometry: Grid1D (n=10, dx=0.06667)\n", "items:\n", " 0: Level (meter)" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ds3 = mikeio.Dataset.concat([ds1, ds2])\n", "ds3" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(ds1.time, ds1[0].to_numpy()[:,1], 'ro', label=\"Dataset 1\")\n", "plt.plot(ds2.time, ds2[0].to_numpy()[:,1], 'k+', label=\"Dataset 2\")\n", "plt.plot(ds3.time, ds3[0].to_numpy()[:,1], 'g-', label=\"Dataset 3\")\n", "plt.title(\"Notice the offset...\")\n", "plt.legend();" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Merging datasets" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "dims: (time:97, x:10)\n", "time: 2019-01-01 00:00:00 - 2019-01-03 00:00:00 (97 records)\n", "geometry: Grid1D (n=10, dx=0.06667)\n", "items:\n", " 0: Level (meter)" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dsA = mikeio.read(\"../tests/testdata/tide1.dfs1\")\n", "dsA" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "dims: (time:97, x:10)\n", "time: 2019-01-01 00:00:00 - 2019-01-03 00:00:00 (97 records)\n", "geometry: Grid1D (n=10, dx=0.06667)\n", "items:\n", " 0: Other_level (meter)" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dsB = dsA.copy()\n", "dsB = dsB.rename({\"Level\":\"Other_level\"})\n", "dsB = dsB + 2\n", "dsB" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Merge datasets with different items can be done like this:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "dims: (time:97, x:10)\n", "time: 2019-01-01 00:00:00 - 2019-01-03 00:00:00 (97 records)\n", "geometry: Grid1D (n=10, dx=0.06667)\n", "items:\n", " 0: Level (meter)\n", " 1: Other_level (meter)" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dsC = mikeio.Dataset.merge([dsA, dsB])\n", "dsC" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Which in this simple case with a single item in each dataset is equivalent to:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "name: Level\n", "dims: (time:97, x:10)\n", "time: 2019-01-01 00:00:00 - 2019-01-03 00:00:00 (97 records)\n", "geometry: Grid1D (n=10, dx=0.06667)" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "daA = dsA[0]\n", "daA" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "name: Other_level\n", "dims: (time:97, x:10)\n", "time: 2019-01-01 00:00:00 - 2019-01-03 00:00:00 (97 records)\n", "geometry: Grid1D (n=10, dx=0.06667)" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "daB = dsB[0]\n", "daB" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "dims: (time:97, x:10)\n", "time: 2019-01-01 00:00:00 - 2019-01-03 00:00:00 (97 records)\n", "geometry: Grid1D (n=10, dx=0.06667)\n", "items:\n", " 0: Level (meter)\n", " 1: Other_level (meter)" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mikeio.Dataset([daA, daB])" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "interpreter": { "hash": "9f8901c748ef3afaefd0447d5e27e03ab26b5b9cbaa046ec14504d27e1b48e82" }, "kernelspec": { "display_name": "Python 3.9.6 64-bit", "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.9.6" }, "orig_nbformat": 4 }, "nbformat": 4, "nbformat_minor": 2 }