{ "cells": [ { "cell_type": "markdown", "id": "joined-gibraltar", "metadata": {}, "source": [ "
\n", "

STMKGxHMGI Long Course

\n", "

Basic Python for Seismology 2

\n", "
\n", "
\n", " \n", "
" ] }, { "cell_type": "markdown", "id": "interstate-harvey", "metadata": {}, "source": [ "## Membaca Data Tabular Menggunakan Pandas\n", "\n", "Pada pertemuan di sesi kedua ini kita akan mulai bermain data dan mengaplikasikan beberapa-beberapa algoritma sederhana di Python untuk data tersebut. Data yang kita gunakan adalah katalog gempa Badan Meteorologi dan Geofisika (BMKG) pada kejadian gempa Mw 6.2 di Mamuju pada Januari lalu. Katalog gempa yang digunakan adalah dalam jangka waktu 11 Januari sampai 30 Januari 2021. Format data katalog berbentuk *Comma Separated Values* (CSV) dan sudah disesuaikan agar lebih mudah dibaca menggunakan Python. Peserta dapat mengunduh data ini dengan menekan [download data](data/demo_data_BMKG_Mamuju.csv) atau melalui [github](https://github.com/anangsahroni/geoscope-geohazard-workshop/blob/main/data/demo_data_BMKG_Mamuju.csv) kemudian taruh di dalam folder `data`. Format dari data ini adalah seperti berikut ini:\n", "\n", "\n", "```\n", "time,latitude,longitude,depth,magnitude\n", "2021-01-27T18:43:24.965Z,-2.97,118.83,11,3.7\n", "2021-01-25T16:04:16.363Z,-3.01,118.80,47,2.8\n", "2021-01-24T20:52:08.070Z,-2.94,118.61,10,2.6\n", "2021-01-24T16:52:55.221Z,-3.00,118.80,35,2.4\n", "2021-01-24T02:38:50.171Z,-2.95,118.88,14,3.1\n", "2021-01-21T11:55:35.955Z,-2.90,118.91,10,4.0\n", "```\n", "\n", "Pembacaan data untuk format CSV seperti di atas dapat dilakukan dengan berbagai macam cara seperti menggunakan fungsi bawaan seperti `open`, `numpy.genfromtxt`, atau menggunakan fungsi yang lebih *high level* atau mudah seperti `pandas.read_csv`. Pada praktik ini kita akan menggunakan cara yang paling mudah dan paling pendek yaitu menggunakan `pandas.read_csv` yang berada dalam modul `pandas`. Modul `pandas` memiliki spesialiasi manipulasi data dalam berbagai format, salah satunya yaitu format tabular seperti yang akan kita olah." ] }, { "cell_type": "markdown", "id": "circular-advertising", "metadata": {}, "source": [ "### Mengimpor Modul `pandas`\n", "\n", "Seperti pada pertemuan pertama dimana kita harus mengimpor modul yang akan kita gunakan (`math`), kita juga akan mengimpor `pandas` dan kemudian memberikan alias panggilan `pd` agar untuk penulisan kode lebih mudah." ] }, { "cell_type": "code", "execution_count": 1, "id": "capable-sitting", "metadata": {}, "outputs": [], "source": [ "import pandas as pd" ] }, { "cell_type": "markdown", "id": "assigned-conditioning", "metadata": {}, "source": [ "Cara pengimporan modul atau paket seperti di atas akan lazim kita temui dalam penulisan kode di Python, selain cara tersebut kita juga dapat langsung mengimpor fungsi yang akan kita gunakan, alih-alih mengimpor modul secara umum. Contoh yang terakhir akan kita berikan di pembahasan di bagian belakang." ] }, { "cell_type": "markdown", "id": "excess-auditor", "metadata": {}, "source": [ "### Membaca Data Menggunakan Fungsi `pandas.read_csv`\n", "Fungsi dari `pandas` yang berguna untuk membaca data tabular dalam bentuk CSV adalah `pandas.read_csv` tetapi karena `pandas` sudah kita berikan alias `pd` maka kita cukup mengetikkan `pd.read_csv`. Sebelum kita menggunakan fungsi tersebut kita terlebih dahulu akan membaca petunjuk penggunaan fungsinya dengan menggunakan fungsi `help`:" ] }, { "cell_type": "code", "execution_count": null, "id": "reserved-cheese", "metadata": {}, "outputs": [], "source": [ "help(pd.read_csv)" ] }, { "cell_type": "markdown", "id": "endangered-holiday", "metadata": {}, "source": [ "Terdapat banyak sekali parameter yang harus kita isikan (atau kita biasa sebut sebagai argumen). Argumen-argumen yang diikuti tanda `=` dan isi parameternya (contoh `delimiter=None`) merupakan argumen yang sudah memiliki nilai *default*, dalam contoh ini untuk argumen `delimiter` apabila tidak kita isi maka secara otomatis akan terisi dengan nilai `None`. Dengan demikian, tidak semua argumen dalam sebuah fungsi harus kita isikan. Pada `pd.read_csv` ini sebenarnya fungsi akan mendeteksi secara otomatis delimiter (tanda pemisah kolom, dalam contoh kita yaitu koma (,)) yang ada di dalam data yang akan dibaca. Saatnya kita membaca data:" ] }, { "cell_type": "code", "execution_count": 3, "id": "removable-february", "metadata": {}, "outputs": [], "source": [ "data = pd.read_csv(\"data/demo_data_BMKG_Mamuju.csv\")" ] }, { "cell_type": "markdown", "id": "statutory-bearing", "metadata": {}, "source": [ "Pada contoh kode pembacaan di atas ini kita hanya mengisikan satu argumen yaitu data yang akan kita gunakan (dalam bentuk `String` karena merupakan kumpulan karakter non angka). Argumen-argumen lain kita tidak isikan karena fungsi ini secara otomatis akan mendeteksi format data yang kita gunakan, dengan catatan data kita sudah rapi dan bersih. Untuk melihat data yang sudah kita baca kita dapat memanggilnya dengan menulis `data` seperti pada kode di bawah ini." ] }, { "cell_type": "code", "execution_count": 4, "id": "technological-animation", "metadata": { "scrolled": true }, "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", "
timelatitudelongitudedepthmagnitude
02021-01-27T18:43:24.965Z-2.97118.83113.7
12021-01-25T16:04:16.363Z-3.01118.80472.8
22021-01-24T20:52:08.070Z-2.94118.61102.6
32021-01-24T16:52:55.221Z-3.00118.80352.4
42021-01-24T02:38:50.171Z-2.95118.88143.1
\n", "
" ], "text/plain": [ " time latitude longitude depth magnitude\n", "0 2021-01-27T18:43:24.965Z -2.97 118.83 11 3.7\n", "1 2021-01-25T16:04:16.363Z -3.01 118.80 47 2.8\n", "2 2021-01-24T20:52:08.070Z -2.94 118.61 10 2.6\n", "3 2021-01-24T16:52:55.221Z -3.00 118.80 35 2.4\n", "4 2021-01-24T02:38:50.171Z -2.95 118.88 14 3.1" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data.head()" ] }, { "cell_type": "markdown", "id": "swiss-label", "metadata": {}, "source": [ "Seperti yang sudah kita bahas diawal, `pd.read_csv` akan secara otomatis mendeteksi format data yang kita baca. Saat data kita panggil dengan perintah `data` maka akan muncul tabel seperti di atas. Kita dapat mengecek apakah data sudah terbaca dengan baik, pada contoh di atas data terbaca dengan baik karena masing-masing kolom terpisahkan dengan benar. Bagaimana dengan contoh pembacaan yang masih salah?" ] }, { "cell_type": "code", "execution_count": 5, "id": "presidential-snowboard", "metadata": { "scrolled": true }, "outputs": [ { "ename": "FileNotFoundError", "evalue": "[Errno 2] No such file or directory: './demo_data_BMKG_MamujuEQ.csv'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mFileNotFoundError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m/tmp/ipykernel_30044/1170650061.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdata_salah\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mpd\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mread_csv\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"./demo_data_BMKG_MamujuEQ.csv\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdelimiter\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\".\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0mdata_salah\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mhead\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/Environments/envgeneral/lib/python3.9/site-packages/pandas/util/_decorators.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 309\u001b[0m \u001b[0mstacklevel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mstacklevel\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 310\u001b[0m )\n\u001b[0;32m--> 311\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 312\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 313\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/Environments/envgeneral/lib/python3.9/site-packages/pandas/io/parsers/readers.py\u001b[0m in \u001b[0;36mread_csv\u001b[0;34m(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, squeeze, prefix, mangle_dupe_cols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, skipfooter, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, cache_dates, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, doublequote, escapechar, comment, encoding, encoding_errors, dialect, error_bad_lines, warn_bad_lines, on_bad_lines, delim_whitespace, low_memory, memory_map, float_precision, storage_options)\u001b[0m\n\u001b[1;32m 584\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mupdate\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkwds_defaults\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 585\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 586\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0m_read\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilepath_or_buffer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 587\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 588\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/Environments/envgeneral/lib/python3.9/site-packages/pandas/io/parsers/readers.py\u001b[0m in \u001b[0;36m_read\u001b[0;34m(filepath_or_buffer, kwds)\u001b[0m\n\u001b[1;32m 480\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 481\u001b[0m \u001b[0;31m# Create the parser.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 482\u001b[0;31m \u001b[0mparser\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mTextFileReader\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilepath_or_buffer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 483\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 484\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mchunksize\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0miterator\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/Environments/envgeneral/lib/python3.9/site-packages/pandas/io/parsers/readers.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, f, engine, **kwds)\u001b[0m\n\u001b[1;32m 809\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moptions\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"has_index_names\"\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"has_index_names\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 810\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 811\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_make_engine\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mengine\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 812\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 813\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mclose\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/Environments/envgeneral/lib/python3.9/site-packages/pandas/io/parsers/readers.py\u001b[0m in \u001b[0;36m_make_engine\u001b[0;34m(self, engine)\u001b[0m\n\u001b[1;32m 1038\u001b[0m )\n\u001b[1;32m 1039\u001b[0m \u001b[0;31m# error: Too many arguments for \"ParserBase\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1040\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mmapping\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mengine\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moptions\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# type: ignore[call-arg]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1041\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1042\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_failover_to_python\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/Environments/envgeneral/lib/python3.9/site-packages/pandas/io/parsers/c_parser_wrapper.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, src, **kwds)\u001b[0m\n\u001b[1;32m 49\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 50\u001b[0m \u001b[0;31m# open handles\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 51\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_open_handles\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msrc\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 52\u001b[0m \u001b[0;32massert\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mhandles\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 53\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/Environments/envgeneral/lib/python3.9/site-packages/pandas/io/parsers/base_parser.py\u001b[0m in \u001b[0;36m_open_handles\u001b[0;34m(self, src, kwds)\u001b[0m\n\u001b[1;32m 220\u001b[0m \u001b[0mLet\u001b[0m \u001b[0mthe\u001b[0m \u001b[0mreaders\u001b[0m \u001b[0mopen\u001b[0m \u001b[0mIOHandles\u001b[0m \u001b[0mafter\u001b[0m \u001b[0mthey\u001b[0m \u001b[0mare\u001b[0m \u001b[0mdone\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mtheir\u001b[0m \u001b[0mpotential\u001b[0m \u001b[0mraises\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 221\u001b[0m \"\"\"\n\u001b[0;32m--> 222\u001b[0;31m self.handles = get_handle(\n\u001b[0m\u001b[1;32m 223\u001b[0m \u001b[0msrc\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 224\u001b[0m \u001b[0;34m\"r\"\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/Environments/envgeneral/lib/python3.9/site-packages/pandas/io/common.py\u001b[0m in \u001b[0;36mget_handle\u001b[0;34m(path_or_buf, mode, encoding, compression, memory_map, is_text, errors, storage_options)\u001b[0m\n\u001b[1;32m 699\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mioargs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mencoding\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0;34m\"b\"\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mioargs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 700\u001b[0m \u001b[0;31m# Encoding\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 701\u001b[0;31m handle = open(\n\u001b[0m\u001b[1;32m 702\u001b[0m \u001b[0mhandle\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 703\u001b[0m \u001b[0mioargs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: './demo_data_BMKG_MamujuEQ.csv'" ] } ], "source": [ "data_salah = pd.read_csv(\"./demo_data_BMKG_MamujuEQ.csv\", delimiter=\".\")\n", "data_salah.head()" ] }, { "cell_type": "markdown", "id": "endless-phrase", "metadata": {}, "source": [ "Pada contoh pembacaan yang salah pada kode diatas, kita memasukkan nilai untuk argumen `delimiter` yaitu berupa tanda titik `.`, padahal pemisah antar kolom pada file CSV kita berupa tanda koma (,). Hal tersebut membuat pemisahan antar kolom tidak benar." ] }, { "cell_type": "markdown", "id": "prerequisite-sucking", "metadata": {}, "source": [ "## Membedakan Jenis Data pada Kolom Data Katalog\n", "\n", "Setelah berhasil membaca data, langkah selanjutnya adalah melihat beberapa tipe-tipe data pada masing-masing kolom untuk mengingatkan kembali pengetahuan kita tentang `String`, `Float`, dan `Integer`. Pada data yang dibaca menggunakan `pd.read_csv`, tabel secara umum memiliki format tersendiri yaitu `DataFrame`, format yang dibuat oleh `pandas`." ] }, { "cell_type": "code", "execution_count": null, "id": "cardiovascular-election", "metadata": { "scrolled": true }, "outputs": [], "source": [ "help(data)" ] }, { "cell_type": "markdown", "id": "limiting-syracuse", "metadata": {}, "source": [ "Masing-masing kolom sendiri memiliki jenis data yang beragam tergantung dengan isi dari setiap kolom tersebut. Pada contoh yang pertama kita akan melihat jenis data yang ada dalam kolom `longitude`. Memanggil salah satu kolom dalam pandas cukup mudah yaitu kita hanya perlu menuliskan `data` kemudian diikuti dengan `[namakolom]`, maka untuk kolom `longitude` kita dapat melihat tipe datanya dengan:" ] }, { "cell_type": "code", "execution_count": 7, "id": "crazy-reform", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dtype('float64')" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data['longitude'].dtype" ] }, { "cell_type": "markdown", "id": "arbitrary-budapest", "metadata": {}, "source": [ "Kolom `longitude` ternyata data di dalamnya memiliki format data `Float` karena merupakan bilangan yang tidak bulat atau desimal. Apabila ingin melihat data dalam kolom ini kita dapat menuliskan kode:" ] }, { "cell_type": "code", "execution_count": 8, "id": "moving-jacket", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "0 118.83\n", "1 118.80\n", "2 118.61\n", "3 118.80\n", "4 118.88\n", "5 118.91\n", "6 118.86\n", "7 119.50\n", "8 118.88\n", "9 118.88\n", "10 118.91\n", "11 119.03\n", "12 118.94\n", "13 118.94\n", "14 118.84\n", "15 118.86\n", "16 118.92\n", "17 118.95\n", "18 118.92\n", "19 118.88\n", "20 118.93\n", "21 118.84\n", "22 118.85\n", "23 118.91\n", "24 119.01\n", "25 118.94\n", "26 118.93\n", "27 118.93\n", "28 118.91\n", "29 118.94\n", "30 118.89\n", "31 118.88\n", "32 118.95\n", "33 118.94\n", "34 118.90\n", "35 118.90\n", "36 118.88\n", "37 118.88\n", "38 118.93\n", "39 118.89\n", "40 118.92\n", "41 119.48\n", "Name: longitude, dtype: float64" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data['longitude']" ] }, { "cell_type": "markdown", "id": "speaking-morris", "metadata": {}, "source": [ "Format data yang berbeda kita temui pada kolom `depth` dimana semua data pada kolom ini berupa bilangan bulat sehingga tipe datanya seharusnya `Integer`." ] }, { "cell_type": "code", "execution_count": 9, "id": "several-camera", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dtype('int64')" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data['depth'].dtype" ] }, { "cell_type": "markdown", "id": "alien-graduation", "metadata": {}, "source": [ "Bagaimana dengan kolom `time`? Apakah tipe data pada kolom ini akan berupa `String`?" ] }, { "cell_type": "code", "execution_count": 10, "id": "tired-recovery", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dtype('O')" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data['time'].dtype" ] }, { "cell_type": "markdown", "id": "planned-sector", "metadata": {}, "source": [ "Ternyata pada kolom `time` tipe datanya adalah `Object` yang disingkat `O`, tipe ini merupakan kita yang lebih lanjut karena dapat berupa jenis data apapun, terkecuali `Integer` dan `Float`, dalam contoh ini." ] }, { "cell_type": "markdown", "id": "brazilian-apparatus", "metadata": {}, "source": [ "## Mempelajari Data Bertipe `list` dan `tuple`\n", "\n", "### List\n", "Apabila kita sudah dapat membedakan jenis data untuk nilai yang berupa satuan (tidak berupa kumpulan nilai) yaitu seperti `String`, `Float`, dan `Integer`. Bagaimana dengan jenis atau tipe data yang merupakan kumpulan-kumpulan angka atau huruf? Seperti contoh pada data di bawah ini:\n", "\n", "```python\n", "deret = [1,2,3,4,5]\n", "alamat = [\"Yogyakarta\", \"Semarang\", \"Ambon\", \"Padang\"]\n", "```\n", "\n", "Pada `deret` kita tahu bahwa isinya merupakan kumpulan dari `Integer` dan pada `alamat` isinya merupakan kumpulan `String` tetapi untuk `deret` dan `alamat` secara utuh sendiri dapat kita dapat sebut sebagai apa? Kumpulan-kumpulan data dalam bentuk daftar satu dimensi seperti pada contoh `deret` dan `alamat` tersebut biasa kita sebut sebagai data berjenis `List`, atau secara matematika, fisika, ataupun ilmu komputer juga dapat kita sebut sebagai sebuah vektor, karena vektor pun bentuknya biasanya diwakili dari kumpulan angka-angka dalam satu baris seperti di atas.\n", "\n", "Setiap kolom dari data yang sebelumnya kita baca menggunakan `pd.read_csv` merupakan salah satu bentuk `List` karena berupa deretan angka dalam 1 dimensi saja atau 1 baris saja. Untuk membaca kolom kedalam bentuk `List` kita dapat menggunakan fungsi bawaan dari Python yaitu `list`:" ] }, { "cell_type": "code", "execution_count": 11, "id": "interpreted-poster", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "[118.83,\n", " 118.8,\n", " 118.61,\n", " 118.8,\n", " 118.88,\n", " 118.91,\n", " 118.86,\n", " 119.5,\n", " 118.88,\n", " 118.88,\n", " 118.91,\n", " 119.03,\n", " 118.94,\n", " 118.94,\n", " 118.84,\n", " 118.86,\n", " 118.92,\n", " 118.95,\n", " 118.92,\n", " 118.88,\n", " 118.93,\n", " 118.84,\n", " 118.85,\n", " 118.91,\n", " 119.01,\n", " 118.94,\n", " 118.93,\n", " 118.93,\n", " 118.91,\n", " 118.94,\n", " 118.89,\n", " 118.88,\n", " 118.95,\n", " 118.94,\n", " 118.9,\n", " 118.9,\n", " 118.88,\n", " 118.88,\n", " 118.93,\n", " 118.89,\n", " 118.92,\n", " 119.48]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "longitude = list(data['longitude'])\n", "longitude" ] }, { "cell_type": "markdown", "id": "voluntary-realtor", "metadata": {}, "source": [ "Ada metode yang dapat diaplikasikan untuk data berjenis`List` ini, yang paling sederhana adalah fungsi `len` untuk mengetahui panjang dari `List`:" ] }, { "cell_type": "code", "execution_count": 12, "id": "intensive-substitute", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "42" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(longitude)" ] }, { "cell_type": "markdown", "id": "saving-steering", "metadata": {}, "source": [ "#### Indeks pada `List`\n", "Data berjenis `List` diindeks dengan indeks awalan adalah 0 sehingga apabila akan memanggil data pertama dalam `List` longitude kita dapat menggunakan:" ] }, { "cell_type": "code", "execution_count": 13, "id": "historic-preserve", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "118.83" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "longitude[0]" ] }, { "cell_type": "markdown", "id": "emotional-concrete", "metadata": {}, "source": [ "Sehingga untuk data terakhir pada `List` `longitude` kita dapat memanggilnya dengan" ] }, { "cell_type": "code", "execution_count": 14, "id": "common-rental", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "119.48" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "longitude[41]" ] }, { "cell_type": "markdown", "id": "electronic-heritage", "metadata": {}, "source": [ "Karena diindeks dari 0 sehingga data terakhir berada pada indeks 41. Agar tidak bingung, Python memberikan alternatif apabila kita ingin memanggil data dari bagian belakang, yaitu dengan menambahakan simbol negatif (-) seperti pada contoh ini:" ] }, { "cell_type": "code", "execution_count": 15, "id": "final-malpractice", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "119.48" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "longitude[-1]" ] }, { "cell_type": "markdown", "id": "selective-polyester", "metadata": {}, "source": [ "Berbeda dengan indeks dari bagian awal yang dimulai dari 0, pada indeks dari akhir kita mulai dengan -1. Untuk mengecek apakah `longitude[41]` dan `longitude[-1]` sama kita dapat menggunakan:" ] }, { "cell_type": "code", "execution_count": 16, "id": "divine-vaccine", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "longitude[41] == longitude[-1]" ] }, { "cell_type": "markdown", "id": "acute-north", "metadata": {}, "source": [ "Hasilnya akan `True` karena nilai keduanya sama, contoh yang lain:" ] }, { "cell_type": "code", "execution_count": 17, "id": "embedded-military", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "longitude[40] == longitude[-2]" ] }, { "cell_type": "markdown", "id": "mexican-joining", "metadata": {}, "source": [ "Hasilnya juga akan `True`." ] }, { "cell_type": "markdown", "id": "threaded-frost", "metadata": {}, "source": [ "#### *Slicing* pada `List`\n", "Bagaimana bila yang akan kita panggil datanya berjumlah lebih dari satu? Misalkan kita akan mengambil 4 data pertama:" ] }, { "cell_type": "code", "execution_count": 18, "id": "coral-sweet", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[118.83, 118.8, 118.61, 118.8]" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "longitude_empat_awal = longitude[0:4]\n", "longitude_empat_awal" ] }, { "cell_type": "markdown", "id": "understanding-celebration", "metadata": {}, "source": [ "Metode di atas sering kita kenal nanti sebagai metode `slicing`, metode ini juga berlaku untuk indeks yang dari belakang:" ] }, { "cell_type": "code", "execution_count": 19, "id": "shaped-allocation", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[118.93, 118.89, 118.92]" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "longitude_tiga_akhir = longitude[-4:-1]\n", "longitude_tiga_akhir" ] }, { "cell_type": "markdown", "id": "promising-commander", "metadata": {}, "source": [ "#### Mengedit `List`" ] }, { "cell_type": "markdown", "id": "impressed-opening", "metadata": {}, "source": [ "Kita dapat menghapus, menambah, atau mengedit isi dari `List` yang kita punya, pada contoh mengedit `List` ini kita akan menggunakan `List` baru yang lebih pendek dan sederhana jadi untuk `List` dan data gempa kita simpan dan tidak ubah-ubah. Kasus ini adalah pendaftaran peserta untuk mengikuti workshop:" ] }, { "cell_type": "code", "execution_count": 20, "id": "banned-marathon", "metadata": {}, "outputs": [], "source": [ "daftar_peserta = [\"Budi\", \"Joni\", \"Putri\", \"Indah\", \"Ade\", \"Rahma\"]" ] }, { "cell_type": "markdown", "id": "challenging-circular", "metadata": {}, "source": [ "Ternyata ada peserta yang mendaftar terlambat yaitu Ari, untuk memasukkan Ari ke daftar peserta kita dapat menggunakan metode `append`." ] }, { "cell_type": "code", "execution_count": 21, "id": "conscious-effort", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Budi', 'Joni', 'Putri', 'Indah', 'Ade', 'Rahma', 'Ari']" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "daftar_peserta.append(\"Ari\")\n", "daftar_peserta" ] }, { "cell_type": "markdown", "id": "infrared-allowance", "metadata": {}, "source": [ "Ari sudah masuk menjadi peserta, walaupun datangnya terlambat sehingga dia duduk di indeks paling terakhir karena metode `append`. Ternyata ada lagi peserta yang belum tercatat yaitu Dina, karena Dina ternyata sudah mendaftar pertama kali tetapi lupa tercatat, panitia kemudian memasukkan Dina ke bangku nomor satu dengan metode `insert` pada indeks 0: " ] }, { "cell_type": "code", "execution_count": 22, "id": "historic-concentrate", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Dina', 'Budi', 'Joni', 'Putri', 'Indah', 'Ade', 'Rahma', 'Ari']" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "daftar_peserta.insert(0,\"Dina\")\n", "daftar_peserta" ] }, { "cell_type": "markdown", "id": "accessible-upset", "metadata": {}, "source": [ "Workshop kemudian selesai dan dilanjutkan dengan ujian, Joni ternyata yang paling cepat sehingga dia keluar kelas workshop terlebih dahulu. Untuk menghapus Joni dari daftar peserta:" ] }, { "cell_type": "code", "execution_count": 23, "id": "wooden-liberal", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "['Dina', 'Budi', 'Putri', 'Indah', 'Ade', 'Rahma', 'Ari']" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "daftar_peserta.remove(\"Joni\")\n", "daftar_peserta" ] }, { "cell_type": "markdown", "id": "bulgarian-massachusetts", "metadata": {}, "source": [ "Bagaimana apabila mengganti langsung menggunakan indeks? Karena ternyata nama Budi bukan Budi tetapi Rudi:" ] }, { "cell_type": "code", "execution_count": 24, "id": "proprietary-vatican", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Dina', 'Rudi', 'Putri', 'Indah', 'Ade', 'Rahma', 'Ari']" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "daftar_peserta[1] = \"Rudi\"\n", "daftar_peserta" ] }, { "cell_type": "markdown", "id": "vocational-metallic", "metadata": {}, "source": [ "Masih banyak metode `List` lain yang dapat kita gunakan, secara lebih lengkap dapat dibuka di `help(list)`" ] }, { "cell_type": "code", "execution_count": 25, "id": "compliant-rogers", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on class list in module builtins:\n", "\n", "class list(object)\n", " | list(iterable=(), /)\n", " | \n", " | Built-in mutable sequence.\n", " | \n", " | If no argument is given, the constructor creates a new empty list.\n", " | The argument must be an iterable if specified.\n", " | \n", " | Methods defined here:\n", " | \n", " | __add__(self, value, /)\n", " | Return self+value.\n", " | \n", " | __contains__(self, key, /)\n", " | Return key in self.\n", " | \n", " | __delitem__(self, key, /)\n", " | Delete self[key].\n", " | \n", " | __eq__(self, value, /)\n", " | Return self==value.\n", " | \n", " | __ge__(self, value, /)\n", " | Return self>=value.\n", " | \n", " | __getattribute__(self, name, /)\n", " | Return getattr(self, name).\n", " | \n", " | __getitem__(...)\n", " | x.__getitem__(y) <==> x[y]\n", " | \n", " | __gt__(self, value, /)\n", " | Return self>value.\n", " | \n", " | __iadd__(self, value, /)\n", " | Implement self+=value.\n", " | \n", " | __imul__(self, value, /)\n", " | Implement self*=value.\n", " | \n", " | __init__(self, /, *args, **kwargs)\n", " | Initialize self. See help(type(self)) for accurate signature.\n", " | \n", " | __iter__(self, /)\n", " | Implement iter(self).\n", " | \n", " | __le__(self, value, /)\n", " | Return self<=value.\n", " | \n", " | __len__(self, /)\n", " | Return len(self).\n", " | \n", " | __lt__(self, value, /)\n", " | Return self\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdaftar_nilai\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m10\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mAttributeError\u001b[0m: 'tuple' object has no attribute 'append'" ] } ], "source": [ "daftar_nilai.append(10)" ] }, { "cell_type": "markdown", "id": "polish-poster", "metadata": {}, "source": [ "Begitupula mengedit nilai yang ada dalam `Tuple` tersebut:" ] }, { "cell_type": "code", "execution_count": 28, "id": "individual-pocket", "metadata": { "scrolled": true }, "outputs": [ { "ename": "TypeError", "evalue": "'tuple' object does not support item assignment", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m/tmp/ipykernel_30044/3974481795.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdaftar_nilai\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m10\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mTypeError\u001b[0m: 'tuple' object does not support item assignment" ] } ], "source": [ "daftar_nilai[1]=10" ] }, { "cell_type": "markdown", "id": "removable-canadian", "metadata": {}, "source": [ "Fun fact: `String` memiliki sifat `Tuple`" ] }, { "cell_type": "code", "execution_count": 29, "id": "level-stable", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'R'" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "nama = \"Rudi\"\n", "nama[0]" ] }, { "cell_type": "code", "execution_count": 30, "id": "veterinary-cartoon", "metadata": {}, "outputs": [ { "ename": "AttributeError", "evalue": "'str' object has no attribute 'append'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m/tmp/ipykernel_30044/1900170436.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mnama\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"s\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mAttributeError\u001b[0m: 'str' object has no attribute 'append'" ] } ], "source": [ "nama.append(\"s\")" ] }, { "cell_type": "code", "execution_count": 31, "id": "numerous-turner", "metadata": { "scrolled": true }, "outputs": [ { "ename": "TypeError", "evalue": "'str' object does not support item assignment", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m/tmp/ipykernel_30044/3390481835.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mnama\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m\"B\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mTypeError\u001b[0m: 'str' object does not support item assignment" ] } ], "source": [ "nama[0] = \"B\"" ] }, { "cell_type": "markdown", "id": "contrary-wrist", "metadata": {}, "source": [ "## *Looping*" ] }, { "cell_type": "markdown", "id": "introductory-working", "metadata": {}, "source": [ "Proses *looping* merupakan proses mengulang-ngulang sebuah proses sampai kondisi tertentu tercapai. Pada Python terdapat dua jenis *looping* yaitu `for` dan `while`. `for` akan melakukan *looping* dengan sampai pada batas jumlah *looping* atau sampai pada syarat tertentu yang sudah tercapai sedangkan `while` akan terus berjalan saat syaratnya masih terpenuhi. Sebelum kita menggunakan `for` untuk mengkonversi `String` pada kolom `time` menjadi data berjenis `datetime.datetime`, kita bermain dengan `list` yang lebih sederhana dahulu:" ] }, { "cell_type": "code", "execution_count": 32, "id": "proprietary-palestinian", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Nama: Dina\n", "Nama: Rudi\n", "Nama: Putri\n", "Nama: Indah\n", "Nama: Ade\n", "Nama: Rahma\n", "Nama: Ari\n" ] } ], "source": [ "for peserta in daftar_peserta:\n", " print(\"Nama: \", peserta)" ] }, { "cell_type": "markdown", "id": "saved-medicaid", "metadata": {}, "source": [ "Pada contoh di atas, kita dapat membaca kode seperti ini: untuk setiap peserta di daftar peserta, kita cetak nama peserta didahului dengan tulisan \"Nama: \", looping akan berjalan mulai dari Dina, sehingga tulisan \"Nama: Dina\" akan tercetak pertama kali, dilanjutkan dengan Rudi, dan yang terakhir adalah Ari." ] }, { "cell_type": "code", "execution_count": 33, "id": "exotic-anderson", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Dina lulus\n", "Rudi lulus\n", "Putri lulus\n", "Indah lulus\n", "Ade lulus\n", "Rahma lulus\n", "Ari lulus\n" ] } ], "source": [ "for peserta in daftar_peserta:\n", " print(peserta, \" lulus\")" ] }, { "cell_type": "markdown", "id": "physical-american", "metadata": {}, "source": [ "Kita juga dapat bermain dengan `List` yang berisi angka, misalnya pada contoh ini kita akan menambahkan setiap nilai pada daftar nilai dengan 1:" ] }, { "cell_type": "code", "execution_count": 34, "id": "forbidden-glucose", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Nilai= (10, 9, 10, 8, 7, 8)\n", "nilai+1= 11\n", "nilai+1= 10\n", "nilai+1= 11\n", "nilai+1= 9\n", "nilai+1= 8\n", "nilai+1= 9\n" ] } ], "source": [ "print(\"Nilai= \", daftar_nilai)\n", "\n", "for nilai in daftar_nilai:\n", " print(\"nilai+1= \",nilai+1)" ] }, { "cell_type": "markdown", "id": "assigned-submission", "metadata": {}, "source": [ "Contoh di bawah ini kita memanfaatkan metode `append` untuk membuat daftar nilai baru yang sudah ditambah dengan 1. Karena `for` loop mengevaluasi setiap `nilai` dalam `daftar_nilai` maka untuk setiap `nilai`, `daftar_nilai_tambah_satu` akan di`append` dengan `nilai+1`, sehingga hasilnya adalah `List` baru yang isinya nilai awal ditambah satu:" ] }, { "cell_type": "code", "execution_count": 35, "id": "other-billion", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Nilai asli= (10, 9, 10, 8, 7, 8)\n", "Nilai+1 = [11, 10, 11, 9, 8, 9]\n" ] } ], "source": [ "daftar_nilai_tambah_satu = []\n", "for nilai in daftar_nilai:\n", " daftar_nilai_tambah_satu.append(nilai+1)\n", " \n", "print(\"Nilai asli= \", daftar_nilai)\n", "print(\"Nilai+1 = \", daftar_nilai_tambah_satu)" ] }, { "cell_type": "markdown", "id": "functioning-holly", "metadata": {}, "source": [ "Kita kembali ke data katalog gempabumi yang sudah kita baca menggunakan `pd.read_csv` tadi. Pada `data` kita mendapatkan satu kolom yang menunjukkan waktu yaitu kolom `time`, saat kita lihat tipe datanya tadi kolom ini masih berupa `Object` secara umum, dan mengarah ke jenis data `String`. Python memiliki jenis data khusus untuk menunjukkan waktu yaitu salah satunya adalah `datetime.datetime`. Dengan demikian kolom `time` harus kita konversi ke dalam tipe `datetime.datetime`. Proses konversi ini dapat dilakukan menggunakan modul `datetime` yang merupakan bawaan dari Python. " ] }, { "cell_type": "code", "execution_count": 36, "id": "muslim-fortune", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "time_pertama 2021-01-27T18:43:24.965Z\n", "tipe data \n" ] } ], "source": [ "list_time = list(data['time'])\n", "time_pertama = list_time[0]\n", "print(\"time_pertama\", time_pertama)\n", "print(\"tipe data\",type(time_pertama))" ] }, { "cell_type": "markdown", "id": "cross-gender", "metadata": {}, "source": [ "Kita dapatkan hasil bahwa untuk waktu pertama tipe datanya adalah masih berupa `String` yang ditunjukkan dengan tulisan `String`. Agar data waktu dapat diolah kita dapat mengubah ke format `datetime.datetime` dengan:\n", "\n", "```python\n", "datetime.datetime.strptime()\n", "```\n", "\n", "Sebelumnya kita lihat dulu fungsi `help` untuk `datetime.datetime.strptime()`:" ] }, { "cell_type": "code", "execution_count": 37, "id": "pleasant-trash", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on built-in function strptime:\n", "\n", "strptime(...) method of builtins.type instance\n", " string, format -> new datetime parsed from a string (like time.strptime()).\n", "\n" ] } ], "source": [ "import datetime\n", "help(datetime.datetime.strptime)" ] }, { "cell_type": "markdown", "id": "framed-marina", "metadata": {}, "source": [ "Ternyata fungsi ini merupakan turunan dari `time.strptime` sehingga untuk melihat petunjukanya kita dapat menggunakan:" ] }, { "cell_type": "code", "execution_count": 38, "id": "tamil-agent", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on built-in function strptime in module time:\n", "\n", "strptime(...)\n", " strptime(string, format) -> struct_time\n", " \n", " Parse a string to a time tuple according to a format specification.\n", " See the library reference manual for formatting codes (same as\n", " strftime()).\n", " \n", " Commonly used format codes:\n", " \n", " %Y Year with century as a decimal number.\n", " %m Month as a decimal number [01,12].\n", " %d Day of the month as a decimal number [01,31].\n", " %H Hour (24-hour clock) as a decimal number [00,23].\n", " %M Minute as a decimal number [00,59].\n", " %S Second as a decimal number [00,61].\n", " %z Time zone offset from UTC.\n", " %a Locale's abbreviated weekday name.\n", " %A Locale's full weekday name.\n", " %b Locale's abbreviated month name.\n", " %B Locale's full month name.\n", " %c Locale's appropriate date and time representation.\n", " %I Hour (12-hour clock) as a decimal number [01,12].\n", " %p Locale's equivalent of either AM or PM.\n", " \n", " Other codes may be available on your platform. See documentation for\n", " the C library strftime function.\n", "\n" ] } ], "source": [ "import time\n", "help(time.strptime)" ] }, { "cell_type": "markdown", "id": "whole-typing", "metadata": {}, "source": [ "Berdasarkan petunjuk di atas kita harus memasukkan `String` kita yaitu `time_pertama` sebagai argumen pertama kemudian diikuti format dari penulisan waktu kita. Waktu kita ditulis dengan menggunakan `2021-01-27T18:43:24.965Z` sehingga menurut pentujuk di atas kita akan menuliskan format `'%Y-%m-%dT%H:%M:%S.%fZ'` sehingga kode untuk konversi menjadi:" ] }, { "cell_type": "code", "execution_count": 39, "id": "wrapped-shakespeare", "metadata": {}, "outputs": [], "source": [ "time_pertama_dt = datetime.datetime.strptime(time_pertama, '%Y-%m-%dT%H:%M:%S.%fZ')" ] }, { "cell_type": "code", "execution_count": 40, "id": "novel-ottawa", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "time_pertama 2021-01-27T18:43:24.965Z\n", "time_pertama_dt 2021-01-27 18:43:24.965000\n" ] } ], "source": [ "print(\"time_pertama\", time_pertama)\n", "print(\"time_pertama_dt\", time_pertama_dt)" ] }, { "cell_type": "markdown", "id": "comparable-seattle", "metadata": {}, "source": [ "Dari hasil di atas sekilas nampak sama, mari kita lihat tipe masing-masing, baik yang sebelum dikonversi dengan yang sudah dikonversi:" ] }, { "cell_type": "code", "execution_count": 41, "id": "outside-novel", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "tipe data time_pertama \n", "tipe data time_pertama_dt \n" ] } ], "source": [ "print(\"tipe data time_pertama\", type(time_pertama))\n", "print(\"tipe data time_pertama_dt\", type(time_pertama_dt))" ] }, { "cell_type": "markdown", "id": "gentle-sellers", "metadata": {}, "source": [ "Dengan fungsi `type` dapat dilihat dengan jelas bahwa untuk format yang sudah dikonversi berubah menjadi `datetime.datetime` sesuai dengan salah satu standar format data berjenis waktu pada Python." ] }, { "cell_type": "markdown", "id": "dynamic-geography", "metadata": {}, "source": [ "Selanjutnya kita akan mengaplikasikan `for` loop untuk mengonversi semua data dalam `List` `list_time` agar tidak perlu melakukannya satu per satu." ] }, { "cell_type": "code", "execution_count": 42, "id": "antique-potato", "metadata": {}, "outputs": [], "source": [ "list_time_dalam_datetime = []\n", "for time in list_time:\n", " time_terkonversi = datetime.datetime.strptime(time, '%Y-%m-%dT%H:%M:%S.%fZ')\n", " list_time_dalam_datetime.append(time_terkonversi)" ] }, { "cell_type": "markdown", "id": "skilled-cartridge", "metadata": {}, "source": [ "**Looping** di atas di awali dengan membuat `List` kosong yang nantinya akan diisi dengan waktu yang sudah dikonversi menjadi format `datetime.datetime`. Proses looping pertama yaitu untuk data pertama pada `list_time`, data ini kemudian akan dikonversi menggunakan fungsi `datetime.datetime.strptime` yang tadi sudah kita coba untuk waktu pertama. Setelah dikonversi, waktu terkonversi akan dimasukkan ke dalam `List` `list_time_dalam_datetime` menggunakan metode `append`. Proses konversi dan `append` ini diulang sampai semua data pada `list_time` terkonversi dan masuk dalam `list_time_dalam_datetime`. Pengecekean kita lakukan dengan memanggil `list_time_dalam_datetime`." ] }, { "cell_type": "code", "execution_count": 43, "id": "british-import", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "[datetime.datetime(2021, 1, 27, 18, 43, 24, 965000),\n", " datetime.datetime(2021, 1, 25, 16, 4, 16, 363000),\n", " datetime.datetime(2021, 1, 24, 20, 52, 8, 70000),\n", " datetime.datetime(2021, 1, 24, 16, 52, 55, 221000),\n", " datetime.datetime(2021, 1, 24, 2, 38, 50, 171000)]" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "list_time_dalam_datetime[:5]" ] }, { "cell_type": "markdown", "id": "wired-narrative", "metadata": {}, "source": [ "List di atas semua anggotanya sudah dalam bentuk `datetime.datetime`." ] }, { "cell_type": "markdown", "id": "tribal-alarm", "metadata": {}, "source": [ "Setelah terkonversi kita sudah dapat menggunakan kolom waktu ini untuk analisisnya, contohnya untuk mengeplot setiap waktu kejadiandan berapa magnitudonya, plot ini hanya preview dan akan dijelaskan di bagian belakang secara lebih mendetail:" ] }, { "cell_type": "code", "execution_count": 44, "id": "changing-helmet", "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "import matplotlib.dates as mdates\n", "\n", "# mendefinisikan list waktu dan magnitudo\n", "waktu = list_time_dalam_datetime\n", "magnitudo = list(data['magnitude'])\n", "\n", "# membuat plot\n", "fig, ax = plt.subplots()\n", "ax.scatter(waktu, magnitudo, color=\"blue\")\n", "ax.set_title(\"Grafik Magnitudo terhadap Waktu Kejadian \\nGempa Mamuju\")\n", "ax.set_xlabel(\"Waktu\")\n", "ax.set_ylabel(\"Magnitudo (M)\")\n", "ax.xaxis.set_major_formatter(mdates.DateFormatter(\"%Y-%m-%d\"))\n", "plt.xticks(rotation=65)\n", "plt.grid()\n" ] }, { "cell_type": "markdown", "id": "interstate-senator", "metadata": {}, "source": [ "Bandingkan dengan plot **SALAH** di bawah ini, karena `String` pada waktu belum dikonversi ke dalam `datetime.datetime`." ] }, { "cell_type": "code", "execution_count": 45, "id": "close-chest", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "import matplotlib.dates as mdates\n", "\n", "waktu = list_time\n", "magnitudo = list(data['magnitude'])\n", "\n", "fig, ax = plt.subplots()\n", "ax.scatter(waktu, magnitudo, color=\"blue\")\n", "ax.set_title(\"Plot SALAH karena waktu masih String\")\n", "ax.set_xlabel(\"Waktu\")\n", "ax.set_ylabel(\"Magnitudo (M)\")\n", "ax.xaxis.set_major_formatter(mdates.DateFormatter(\"%Y-%m-%d\"))\n", "plt.xticks(rotation=65)\n", "plt.grid()\n" ] }, { "cell_type": "markdown", "id": "narrow-release", "metadata": {}, "source": [ "## *Conditional*\n", "\n", "*Conditional* merupakan susunan dari pernyataan-pernyataan jika yang digunakan untuk menentukan keputusan/*decision making*. Pada Python algoritma *conditional* biasanya dituliskan menggunakan `if` untuk level pertama, dilanjutkan `elif` untuk level berikutnya, dan untuk level terakhir menggunakankan pernyataan `else`. Mungkin akan lebih mudah apabila dijelaskan dalam bentuk kode:" ] }, { "cell_type": "code", "execution_count": 49, "id": "cordless-tulsa", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Masukkan angka nilai anda: 55\n", "Nilai anda C\n" ] } ], "source": [ "nilai = float(input(\"Masukkan angka nilai anda: \"))\n", "\n", "if nilai < 50:\n", " print(\"Nilai anda\", \"D\")\n", "elif nilai <60:\n", " print(\"Nilai anda\", \"C\")\n", "elif nilai <70:\n", " print(\"Nilai anda\", \"B\")\n", "else:\n", " print(\"Nilai anda\", \"A\")" ] }, { "cell_type": "markdown", "id": "introductory-windsor", "metadata": {}, "source": [ "Pada contoh di atas apabila kita memasukkan nilai 55 maka yang pertama kali dicek adalah kondisional paling atas yaitu `if nilai <50`, karena nilai lebih besar daripada 50 maka ekspresi akan dilanjutkan ke kondisional kedua yaitu `elif nilai <60`, dimana pada fase kedua ini sudah cocok karena nilai 55 berada di bawah 60 sehingga akan keluar `Nilai anda C`. Contoh dibawah ini adalah untuk kasus nilai 45: " ] }, { "cell_type": "code", "execution_count": 50, "id": "removed-democrat", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Masukkan angka nilai anda: 45\n", "Nilai anda D\n" ] } ], "source": [ "nilai = float(input(\"Masukkan angka nilai anda: \"))\n", "\n", "if nilai < 50:\n", " print(\"Nilai anda\", \"D\")\n", "elif nilai <60:\n", " print(\"Nilai anda\", \"C\")\n", "elif nilai <70:\n", " print(\"Nilai anda\", \"B\")\n", "else:\n", " print(\"Nilai anda\", \"A\")" ] }, { "cell_type": "markdown", "id": "internal-mercy", "metadata": {}, "source": [ "Pada nilai 45 proses sudah langsung terhenti di level 1 (`if nilai < 50`) sehingga proses akan selesai dan keluar hasil cetakan berupa `Nilai anda D`. Kondisional ini dapat berlevel dan dapat pula menggunakan ekspresi `and` untuk \"dan\" dan `or` untuk `atau`. Seperti contoh di bawah ini:" ] }, { "cell_type": "code", "execution_count": 51, "id": "special-expression", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Masukkan angka nilai anda: 60\n", "Nilai anda berada di antara 50 dan 70\n" ] } ], "source": [ "nilai = float(input(\"Masukkan angka nilai anda: \"))\n", "\n", "if nilai>50 and nilai <70:\n", " print(\"Nilai anda berada di antara 50 dan 70\")\n", "elif nilai<50 or nilai>70:\n", " print(\"Nilai anda bisa jadi lebih rendah dari 50\\\n", " atau lebih tinggi dari 70\")" ] }, { "cell_type": "markdown", "id": "laughing-bunny", "metadata": {}, "source": [ "Pada contoh di atas apabila kita memasukkan nilai 60, Python akan mencetak `Nilai anda berada di antara 50 dan 70` karena angka 60 lebih besar dari 50 (`nilai>50`) dan (`and`) lebih rendah dari 70 (`nilai<70`). Berbeda apabila kita memasukkan angka 45, apa yang akan terjadi?\n", "\n", "### Memfilter data Katalog Menggunakan *Conditional*\n", "\n", "*Conditional* akan kita gunakan untuk memfilter katalog berdasarkan beberapa syarat, seperti syarat waktu kejadian, syarat kedalaman, syarat magnitudo, ataupun syarat lokasi horizontal. Sebelum melakukan filter data katalog, kita akan mengumpulkan terlebih dahulu kolom-kolom data katalog kita." ] }, { "cell_type": "code", "execution_count": 52, "id": "advisory-artwork", "metadata": {}, "outputs": [], "source": [ "kolom_waktu = list_time_dalam_datetime\n", "kolom_latitude = list(data['latitude'])\n", "kolom_longitude = list(data['longitude'])\n", "kolom_kedalaman = list(data['depth'])\n", "kolom_magnitudo = list(data['magnitude'])" ] }, { "cell_type": "markdown", "id": "musical-heating", "metadata": {}, "source": [ "Kolom-kolom yang sudah kitakumpulkan akan kita satukan dalam bentuk data baru yaitu `dictionary`. `dictionary` merupakan kumpulan data dengan masing-masing pasangan `key` dan `value`, jika diibaratkan dengan sebuah tabel maka `key` adalah judul kolom dan `value` adalah isi dari kolom tersebut. `dictionary` ini akan kita gunakan untuk menggabungkan kembali kolom-kolom yang sudah terpisah. Pembuatan `dictionary` dalam Python ada beberap cara, pada cara ini kita akan menggunakan fungsi `dict`." ] }, { "cell_type": "code", "execution_count": 53, "id": "falling-perfume", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "{'waktu': [datetime.datetime(2021, 1, 27, 18, 43, 24, 965000),\n", " datetime.datetime(2021, 1, 25, 16, 4, 16, 363000),\n", " datetime.datetime(2021, 1, 24, 20, 52, 8, 70000),\n", " datetime.datetime(2021, 1, 24, 16, 52, 55, 221000),\n", " datetime.datetime(2021, 1, 24, 2, 38, 50, 171000),\n", " datetime.datetime(2021, 1, 21, 11, 55, 35, 955000),\n", " datetime.datetime(2021, 1, 20, 14, 43, 48, 536000),\n", " datetime.datetime(2021, 1, 20, 14, 19, 28, 193000),\n", " datetime.datetime(2021, 1, 18, 13, 51, 39, 482000),\n", " datetime.datetime(2021, 1, 18, 9, 29, 21, 771000),\n", " datetime.datetime(2021, 1, 18, 4, 11, 17, 114000),\n", " datetime.datetime(2021, 1, 16, 17, 42, 58, 908000),\n", " datetime.datetime(2021, 1, 16, 10, 45, 50, 793000),\n", " datetime.datetime(2021, 1, 15, 23, 32, 53, 689000),\n", " datetime.datetime(2021, 1, 15, 12, 28, 53, 297000),\n", " datetime.datetime(2021, 1, 15, 7, 40, 49, 939000),\n", " datetime.datetime(2021, 1, 15, 5, 34, 38, 593000),\n", " datetime.datetime(2021, 1, 15, 1, 7, 50, 643000),\n", " datetime.datetime(2021, 1, 15, 0, 25, 26, 778000),\n", " datetime.datetime(2021, 1, 15, 0, 13, 37, 564000),\n", " datetime.datetime(2021, 1, 14, 22, 17, 34, 940000),\n", " datetime.datetime(2021, 1, 14, 20, 46, 12, 410000),\n", " datetime.datetime(2021, 1, 14, 20, 28, 7, 923000),\n", " datetime.datetime(2021, 1, 14, 19, 59, 7, 736000),\n", " datetime.datetime(2021, 1, 14, 19, 55, 26, 840000),\n", " datetime.datetime(2021, 1, 14, 19, 31, 13, 655000),\n", " datetime.datetime(2021, 1, 14, 19, 25, 24, 353000),\n", " datetime.datetime(2021, 1, 14, 19, 11, 19, 488000),\n", " datetime.datetime(2021, 1, 14, 19, 2, 1, 160000),\n", " datetime.datetime(2021, 1, 14, 18, 55, 16, 447000),\n", " datetime.datetime(2021, 1, 14, 18, 48, 52, 56000),\n", " datetime.datetime(2021, 1, 14, 18, 41, 54, 53000),\n", " datetime.datetime(2021, 1, 14, 18, 39, 57, 672000),\n", " datetime.datetime(2021, 1, 14, 18, 28, 20, 239000),\n", " datetime.datetime(2021, 1, 14, 18, 25, 39, 776000),\n", " datetime.datetime(2021, 1, 14, 17, 22, 36, 118000),\n", " datetime.datetime(2021, 1, 14, 17, 1, 7, 592000),\n", " datetime.datetime(2021, 1, 14, 7, 33, 55, 830000),\n", " datetime.datetime(2021, 1, 14, 6, 51, 34, 540000),\n", " datetime.datetime(2021, 1, 14, 6, 38, 38, 373000),\n", " datetime.datetime(2021, 1, 14, 6, 35, 50, 399000),\n", " datetime.datetime(2021, 1, 11, 9, 2, 9, 451000)],\n", " 'latitude': [-2.97,\n", " -3.01,\n", " -2.94,\n", " -3.0,\n", " -2.95,\n", " -2.9,\n", " -2.89,\n", " -2.39,\n", " -2.99,\n", " -2.94,\n", " -2.93,\n", " -2.92,\n", " -2.9,\n", " -2.92,\n", " -2.89,\n", " -2.9,\n", " -2.95,\n", " -2.92,\n", " -2.96,\n", " -2.87,\n", " -2.89,\n", " -2.91,\n", " -2.89,\n", " -2.96,\n", " -2.9,\n", " -3.02,\n", " -2.92,\n", " -2.93,\n", " -2.94,\n", " -3.01,\n", " -2.95,\n", " -2.89,\n", " -3.03,\n", " -2.97,\n", " -2.94,\n", " -2.92,\n", " -2.94,\n", " -2.99,\n", " -2.95,\n", " -2.97,\n", " -3.01,\n", " -2.86],\n", " 'longitude': [118.83,\n", " 118.8,\n", " 118.61,\n", " 118.8,\n", " 118.88,\n", " 118.91,\n", " 118.86,\n", " 119.5,\n", " 118.88,\n", " 118.88,\n", " 118.91,\n", " 119.03,\n", " 118.94,\n", " 118.94,\n", " 118.84,\n", " 118.86,\n", " 118.92,\n", " 118.95,\n", " 118.92,\n", " 118.88,\n", " 118.93,\n", " 118.84,\n", " 118.85,\n", " 118.91,\n", " 119.01,\n", " 118.94,\n", " 118.93,\n", " 118.93,\n", " 118.91,\n", " 118.94,\n", " 118.89,\n", " 118.88,\n", " 118.95,\n", " 118.94,\n", " 118.9,\n", " 118.9,\n", " 118.88,\n", " 118.88,\n", " 118.93,\n", " 118.89,\n", " 118.92,\n", " 119.48],\n", " 'kedalaman': [11,\n", " 47,\n", " 10,\n", " 35,\n", " 14,\n", " 10,\n", " 10,\n", " 10,\n", " 20,\n", " 14,\n", " 10,\n", " 13,\n", " 11,\n", " 10,\n", " 10,\n", " 24,\n", " 19,\n", " 14,\n", " 10,\n", " 21,\n", " 10,\n", " 10,\n", " 14,\n", " 10,\n", " 15,\n", " 23,\n", " 10,\n", " 10,\n", " 10,\n", " 19,\n", " 11,\n", " 10,\n", " 10,\n", " 21,\n", " 10,\n", " 10,\n", " 11,\n", " 10,\n", " 15,\n", " 10,\n", " 12,\n", " 10],\n", " 'magnitudo': [3.7,\n", " 2.8,\n", " 2.6,\n", " 2.4,\n", " 3.1,\n", " 4.0,\n", " 2.3,\n", " 3.8,\n", " 3.5,\n", " 3.5,\n", " 3.7,\n", " 2.6,\n", " 3.4,\n", " 4.7,\n", " 3.5,\n", " 3.8,\n", " 2.7,\n", " 2.6,\n", " 4.3,\n", " 2.7,\n", " 3.2,\n", " 3.4,\n", " 3.4,\n", " 3.2,\n", " 3.2,\n", " 2.6,\n", " 3.2,\n", " 3.5,\n", " 3.1,\n", " 3.0,\n", " 3.9,\n", " 4.1,\n", " 4.1,\n", " 6.2,\n", " 3.1,\n", " 2.8,\n", " 2.9,\n", " 3.8,\n", " 2.8,\n", " 4.9,\n", " 5.7,\n", " 2.6]}" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "katalog_dict = dict(waktu=kolom_waktu,\n", " latitude=kolom_latitude,\n", " longitude=kolom_longitude,\n", " kedalaman=kolom_kedalaman,\n", " magnitudo=kolom_magnitudo)\n", "\n", "katalog_dict" ] }, { "cell_type": "markdown", "id": "marine-affairs", "metadata": {}, "source": [ "Pada fungsi `dict` di atas kita memberikan masing-masing judul kolom yang kemudian diikuti nilai-nilai untuk kolom tersebut. Salah satu contohnya yaitu untuk judul `waktu` diikuti dengan `kolom_waktu`. Kolom-kolom yang sebelumnya terpisah dan dalam bentuk struktur data `List` kini sudah tergabung dalam satu kesatuan berbentuk `dictionary`. Untuk mengakses kolom pada `dictionary` kita dapat menggunakan cara yang sama ketika mengakses kolom pada `DataFrame` hasil pembacaan `pandas`. Hanya saja pada `dictionary` ini hasil pembacaan kolom akan langsung berbentuk `List`, tanpa dikonversi dengan fungsi `list`." ] }, { "cell_type": "code", "execution_count": 54, "id": "brazilian-february", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "[datetime.datetime(2021, 1, 27, 18, 43, 24, 965000),\n", " datetime.datetime(2021, 1, 25, 16, 4, 16, 363000),\n", " datetime.datetime(2021, 1, 24, 20, 52, 8, 70000),\n", " datetime.datetime(2021, 1, 24, 16, 52, 55, 221000),\n", " datetime.datetime(2021, 1, 24, 2, 38, 50, 171000)]" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "katalog_dict['waktu'][:5]" ] }, { "cell_type": "code", "execution_count": 55, "id": "invisible-english", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dict_keys(['waktu', 'latitude', 'longitude', 'kedalaman', 'magnitudo'])" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "katalog_dict.keys()" ] }, { "cell_type": "markdown", "id": "favorite-order", "metadata": {}, "source": [ "Pada contoh di bawah ini kita akan memisahkan lagi `dictionary` menjadi kolom-kolom kemudian memanfaatkan `zip` untuk melakukan *looping* for secara paralel untuk semua kolom data katalog kita." ] }, { "cell_type": "code", "execution_count": 56, "id": "terminal-ground", "metadata": {}, "outputs": [], "source": [ "tanggal_awal = datetime.datetime(2021,1,14) # 12 Januari 2021\n", "tanggal_akhir = datetime.datetime(2021,1,15) # 14 Januari 2021\n", "\n", "#katalog hasil_filter\n", "waktu_hasil_filter = []\n", "longitude_hasil_filter = []\n", "latitude_hasil_filter = []\n", "kedalaman_hasil_filter = []\n", "magnitudo_hasil_filter = []\n", "\n", "\n", "# memisah masing-masing kolom lagi\n", "waktu = katalog_dict['waktu']\n", "latitude = katalog_dict['latitude']\n", "longitude = katalog_dict['longitude']\n", "kedalaman = katalog_dict['kedalaman']\n", "magnitudo = katalog_dict['magnitudo']\n", "\n", "# mengumpulkan kolom menjadi satu `zip`\n", "katalog = zip(waktu, latitude, longitude, kedalaman, magnitudo)\n", "\n", "for t,lat,lon,ked,mag in katalog:\n", " # jika waktu lebih dari tanggal awal dan kurang dari tanggal akhir\n", " if t>tanggal_awal and t" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "import matplotlib.dates as mdates\n", "\n", "# mendefinisikan list waktu dan magnitudo\n", "waktu_hasil_filter = waktu_hasil_filter\n", "magnitudo_hasil_filter = magnitudo_hasil_filter\n", "\n", "# membuat plot\n", "fig, ax = plt.subplots()\n", "ax.scatter(waktu, magnitudo, color=\"blue\", label=\"asli\")\n", "ax.scatter(waktu_hasil_filter, magnitudo_hasil_filter, color=\"orange\", label=\"hasil_filter\")\n", "ax.set_title(\"Grafik Magnitudo terhadap Waktu Kejadian \\nGempa Mamuju\")\n", "ax.set_xlabel(\"Waktu\")\n", "ax.set_ylabel(\"Magnitudo (M)\")\n", "ax.xaxis.set_major_formatter(mdates.DateFormatter(\"%Y-%m-%d\"))\n", "ax.axvline(x=tanggal_awal, linestyle=\"--\", color=\"grey\")\n", "ax.axvline(x=tanggal_akhir, linestyle=\"--\", color=\"grey\")\n", "plt.xticks(rotation=65)\n", "plt.legend()\n", "plt.grid()\n" ] }, { "cell_type": "markdown", "id": "lesser-butter", "metadata": {}, "source": [ "## Fungsi dan Modul\n", "\n", "Fungsi merupakan kumpulan kode dengan tujuan tertentu yang dapat dipanggil saat akan digunakan. Kode dalam sebuah fungsi akan disesuaikan dengan tujuan dibuatnya fungsi tersebut. Fungsi-fungsi dipecah menjadi bagian-bagian kecil untuk mempermudah penulisan kode, pemanggilan, *debugging*, dan *maintenance*, kebiasaan ini sering disebut sebagai *refactoring*. berikut ini adalah contoh fungsi dengan tujuan spesifik yaitu untuk menghitung volume kubus." ] }, { "cell_type": "code", "execution_count": 59, "id": "super-lesson", "metadata": {}, "outputs": [], "source": [ "def volume_kubus(panjang_sisi):\n", " \"\"\"Fungsi untuk menghitung volume kubus\n", " \n", " Parameters:\n", " panjang_sisi : float\n", " Panjang sisi kubus\n", " \n", " Returns:\n", " volume : float\n", " Volume kubus\n", " \"\"\"\n", " volume = float(panjang_sisi)**3\n", " return volume" ] }, { "cell_type": "markdown", "id": "stuffed-dialogue", "metadata": {}, "source": [ "Penulisan fungsi diawali dengan sintaks `def` yang diikuti dengan nama fungsi, setelah nama fungsi kemudian ada `argument` didalam tanda kurung yang harus kita isikan nilainya ketika memanggil fungsi tersebut. Perhitungan kemudian diletakkan di baris bawah pendefinisian fungsi dengan diberikan satu kali indentasi. Di akhir setiap fungsi biasanya akan ada sintaks `return` yang diikuti variabel apa yang akan dikembalikan atau dihasilkan dari menjalankan fungsi tersebut. Tidak semua fungsi harus mengembalikan sebuah hasil. \n", "\n", "Pada fungsi volume kubus di atas nama fungsinya adalah `volume_kubus` dengan parameter atau argumen yang harus diisi adalah `panjang_sisi`. `volume` kemudian akan dihitung dengan menggunakan rumus `float(panjang_sisi)**3` sebelum akhrinya dikembalikan atau dikeluarkan hasilnya oleh `return`. Fungsi di atas menjadi terlihat begitu panjang karena terdapat `docstring` yang diapit oleh `'''` yang merupakan manual penggunaan fungsi tersebut. `docstring` atau string dokumentasi ini berguna sebagai petunjuk bagi pengguna serta penulis kode, apabila akan melakukan *maintenance* atau update. `docstring` yang ditunjukkan disini adalah `docstring` dengan format penulisan mengikuti gaya `numpy`. Dengan adanya `docstring` maka kita dapat memanggil fungsi `help` yang akan menunjukkan `docstring` tersebut." ] }, { "cell_type": "code", "execution_count": 60, "id": "golden-privilege", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on function volume_kubus in module __main__:\n", "\n", "volume_kubus(panjang_sisi)\n", " Fungsi untuk menghitung volume kubus\n", " \n", " Parameters:\n", " panjang_sisi : float\n", " Panjang sisi kubus\n", " \n", " Returns:\n", " volume : float\n", " Volume kubus\n", "\n" ] } ], "source": [ "help(volume_kubus)" ] }, { "cell_type": "markdown", "id": "cardiovascular-slovenia", "metadata": {}, "source": [ "Contoh pemanggilan fungsi `volume_kubus`:" ] }, { "cell_type": "code", "execution_count": 61, "id": "abandoned-tennis", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "27.0" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "volume_kubus(3)" ] }, { "cell_type": "markdown", "id": "civilian-korea", "metadata": {}, "source": [ "Paramater juga dapat diberikan nilai *default*, dalam contoh ini `panjang_sisi` diberikan nilai *default* yaitu 30:" ] }, { "cell_type": "code", "execution_count": 62, "id": "continental-karma", "metadata": {}, "outputs": [], "source": [ "def volume_kubus(panjang_sisi=3.0):\n", " \"\"\"Fungsi untuk menghitung volume kubus\n", " \n", " Parameters:\n", " panjang_sisi : float, default=3.0\n", " Panjang sisi kubus\n", " \n", " Returns:\n", " volume : float\n", " Volume kubus\n", " \"\"\"\n", " volume = float(panjang_sisi)**3\n", " return volume" ] }, { "cell_type": "code", "execution_count": 63, "id": "clear-tomorrow", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on function volume_kubus in module __main__:\n", "\n", "volume_kubus(panjang_sisi=3.0)\n", " Fungsi untuk menghitung volume kubus\n", " \n", " Parameters:\n", " panjang_sisi : float, default=3.0\n", " Panjang sisi kubus\n", " \n", " Returns:\n", " volume : float\n", " Volume kubus\n", "\n" ] } ], "source": [ "help(volume_kubus)" ] }, { "cell_type": "markdown", "id": "amended-edgar", "metadata": {}, "source": [ "Saat sebuah parameter fungsi memiliki nilai *default* maka apabila kita tidak mengisikan parameter dan argumen tersebut kita akan tetap mendapatkan hasil, dengan `panjang_sisi` otomatis adalah 30." ] }, { "cell_type": "code", "execution_count": 64, "id": "nasty-sherman", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "27.0" ] }, "execution_count": 64, "metadata": {}, "output_type": "execute_result" } ], "source": [ "volume_kubus()" ] }, { "cell_type": "markdown", "id": "prostate-correlation", "metadata": {}, "source": [ "Fungsi juga dapat dituliskan dalam bentuk `lambda` yang singkat tetapi nama fungsinya tidak tersimpan dan langsung menjadi nama variabel. Contoh fungsi `lambda`:" ] }, { "cell_type": "code", "execution_count": 65, "id": "external-refund", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "25\n" ] } ], "source": [ "pangkat_2 = lambda x: x**2\n", "print(pangkat_2(5))" ] }, { "cell_type": "markdown", "id": "twelve-builder", "metadata": {}, "source": [ "Fungsi juga dapat berbentuk fungsi yang rekursif seperti contoh fungsi faktorial yang diambil dari [programiz](https://www.programiz.com/python-programming/recursion):" ] }, { "cell_type": "code", "execution_count": 66, "id": "ignored-volume", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The factorial of 3 is 6\n" ] } ], "source": [ "def factorial(x):\n", " \"\"\"This is a recursive function\n", " to find the factorial of an integer\"\"\"\n", "\n", " if x == 1:\n", " return 1\n", " else:\n", " return (x * factorial(x-1))\n", "\n", "\n", "num = 3\n", "print(\"The factorial of\", num, \"is\", factorial(num))" ] }, { "cell_type": "markdown", "id": "occasional-arrival", "metadata": {}, "source": [ "### Memasukkan Kode Filter ke Dalam Fungsi\n", "\n", "Setelah memahami tentang fungsi, kita kemudian akan memasukkan kode-kode filter katalog kita tadi ke dalam sebuah fungsi sehingga kita tidak perlu menuliskan berulang-ulang dan hanya perlu memanggilnya. Untuk memasukkan ke dalam fungsi kita dapat menggunakan kode berikut ini dengan parameter yang harus dimasukkan masih dalam bentuk `list` atau kolom." ] }, { "cell_type": "code", "execution_count": 67, "id": "olive-castle", "metadata": {}, "outputs": [], "source": [ "def filter_katalog_waktu(waktu_awal, waktu_akhir, waktu, longitude, \\\n", " latitude, kedalaman, magnitudo):\n", " \"\"\"Fungsi untuk memfilter katalog berdasarkan waktu\n", " \n", " Parameters:\n", " waktu_awal : datetime.datetime\n", " Waktu awal untuk proses filter\n", " waktu_akhir : datetime.datetime\n", " Waktu akhir untuk proses filter\n", " waktu : list\n", " List yang berisi waktu kejadian\n", " longitude : list\n", " List yang berisi longitude\n", " latitude : list\n", " List yang berisi latitude\n", " kedalaman : list\n", " List yang berisi kedalaman\n", " magnitudo : list\n", " List yang berisi magnitudo\n", " \n", " \n", " Returns:\n", " waktu_hasil_filter : list\n", " List yang berisi waktu kejadian hasil filter\n", " longitude_hasil_filter : list\n", " List yang berisi longitude hasil filter\n", " latitude_hasil_filter : list\n", " List yang berisi latitude hasil filter\n", " kedalaman_hasil_filter : list\n", " List yang berisi kedalaman hasil filter\n", " magnitudo_hasil_filter : list\n", " List yang berisi magnitudo hasil filter\n", " \"\"\" \n", " \n", " #katalog hasil_filter\n", " waktu_hasil_filter = []\n", " longitude_hasil_filter = []\n", " latitude_hasil_filter = []\n", " kedalaman_hasil_filter = []\n", " magnitudo_hasil_filter = []\n", "\n", " # mengumpulkan kolom menjadi satu `zip`\n", " katalog = zip(waktu, latitude, longitude, kedalaman, magnitudo)\n", "\n", " for t,lat,lon,ked,mag in katalog:\n", " # jika waktu lebih dari tanggal awal dan kurang dari tanggal akhir\n", " if t>waktu_awal and t" ] }, "execution_count": 71, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(hasil_filter_t, hasil_filter_ked)" ] }, { "cell_type": "markdown", "id": "answering-wilson", "metadata": {}, "source": [ "Kode dapat kita sederhanakan dengan menggunakan pengetahuan `dictionary` seperti pada contoh awal. Peserta dapat berlatih dengan studi kasus ini, yaitu mengubah parameter fungsi dari masing-masing kolom menjadi satu `dictionary` saja." ] }, { "cell_type": "markdown", "id": "personalized-characteristic", "metadata": {}, "source": [ "### Menyimpan Fungsi ke Dalam Sebuah Modul\n", "\n", "Fungsi `filter_katalog_waktu` di atas salinlah ke dalam folder `utilities` yang berada satu level dengan notebook ini ke dalam file dengan nama `filter_katalog.py`. Pada folder `utilities` tersebut, buatlah satu file lagi dengan nama `__init__.py` (file kosong) sebagai penanda untuk Python bahwa folder tersebut merupakan sebuah modul. Susunannya kira-kira adalah seperti ini:\n", "\n", "```\n", "|folder_utama/\n", "|-|utilites/\n", "|-|-|__init__.py\n", "|-|-|filter_katalog.py\n", "|-|2_Materi_Dasar_Python.ipynb\n", "```" ] }, { "cell_type": "markdown", "id": "regulated-cartoon", "metadata": {}, "source": [ "Setelah itu kita dapat memanggil fungsi kita layaknya modul-modul yang sudah kita gunakan sebelumnya:" ] }, { "cell_type": "code", "execution_count": 74, "id": "juvenile-terrace", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on function filter_katalog_waktu in module utilities.filter_katalog:\n", "\n", "filter_katalog_waktu(waktu_awal, waktu_akhir, waktu, longitude, latitude, kedalaman, magnitudo)\n", " Fungsi untuk memfilter katalog berdasarkan waktu\n", " \n", " Parameters:\n", " waktu_awal : datetime.datetime\n", " Waktu awal untuk proses filter\n", " waktu_akhir : datetime.datetime\n", " Waktu akhir untuk proses filter\n", " waktu : list\n", " List yang berisi waktu kejadian\n", " longitude : list\n", " List yang berisi longitude\n", " latitude : list\n", " List yang berisi latitude\n", " kedalaman : list\n", " List yang berisi kedalaman\n", " magnitudo : list\n", " List yang berisi magnitudo\n", " \n", " \n", " Returns:\n", " waktu_hasil_filter : list\n", " List yang berisi waktu kejadian hasil filter\n", " longitude_hasil_filter : list\n", " List yang berisi longitude hasil filter\n", " latitude_hasil_filter : list\n", " List yang berisi latitude hasil filter\n", " kedalaman_hasil_filter : list\n", " List yang berisi kedalaman hasil filter\n", " magnitudo_hasil_filter : list\n", " List yang berisi magnitudo hasil filter\n", "\n" ] } ], "source": [ "from utilities.filter_katalog import filter_katalog_waktu\n", "\n", "help(filter_katalog_waktu)" ] }, { "cell_type": "markdown", "id": "robust-greenhouse", "metadata": {}, "source": [ "## Visualisasi Data\n", "\n", "Visualisasi data di Python biasa dilakukan dengan menggunakan modul `matplotlib`, modul ini yang paling umum dan sebenarnya masih banya modul visualisasi data yang lain. Setelah ditahap sebelumnya kita sudah mengolah dan mencoba mengaplikasikan beberapa algoritma umum Python, pada tahap ini kita akan memvisualisasikan data-data yang telah kita baca. Proses plotting para `matplotlib` dilakukan menggunakan fungsi `pyplot`, fungsi ini akan kita impor kemudian kita beri alias sebagai `plt`." ] }, { "cell_type": "code", "execution_count": 75, "id": "cardiovascular-surface", "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "id": "wound-anxiety", "metadata": {}, "source": [ "### Plot sederhana\n", "Fungsi paling sederhana dan mudah adalah dengan langsung melakukan plot menggunakan `plt` ini:" ] }, { "cell_type": "code", "execution_count": 76, "id": "amended-hawaiian", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 76, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(longitude, latitude)" ] }, { "cell_type": "markdown", "id": "signal-attendance", "metadata": {}, "source": [ "Fungsi `plt.scatter` seperti di atas akan mengeplot data menjadi titik-titik/*scatter*. Fungsi untuk mengeplot garis adalah `plt.plot`:" ] }, { "cell_type": "code", "execution_count": 77, "id": "verified-turtle", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 77, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(waktu, magnitudo)" ] }, { "cell_type": "markdown", "id": "greenhouse-empty", "metadata": {}, "source": [ "Masih banyak sekali bentuk-bentuk plot yang dapat dilihat secara lebih lengkap di website [matplotlib](https://matplotlib.org/).\n", "\n", "### Menambah komponen plot\n", " Komponen-komponen grafik dapat kita tambahkan dengan beberapa fungsi di bawah ini:\n" ] }, { "cell_type": "code", "execution_count": 78, "id": "listed-transcript", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# mengeplot (ditambah label)\n", "plt.scatter(longitude, latitude, label=\"Episenter\")\n", "\n", "# menambah keterangan sumbu x dan y\n", "plt.xlabel(\"Longitude [deg]\")\n", "plt.ylabel(\"Latitude [deg]\")\n", "\n", "# menambah judul plot\n", "plt.title(\"Plot Episenter Gempa di Sekitar Mamuju\")\n", "\n", "# menambah garis grid\n", "plt.grid()\n", "\n", "# menampilkan legenda\n", "plt.legend()" ] }, { "cell_type": "markdown", "id": "arctic-mystery", "metadata": {}, "source": [ "### Menyimpan plot\n", "Untuk menambahkan menyimpan gambar kita dapat menggunakan fungsi `plt.savefig` diikuti dengan `lokasi` output dan `dpi` yang merupakan resolusi dalam *dot per inch*, contoh gambar di atas akan kita simpan di folder `output` (folder ini harus sudah dibuat terlebih dahulu)." ] }, { "cell_type": "code", "execution_count": 80, "id": "designing-dutch", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# mengeplot (ditambah label)\n", "plt.scatter(longitude, latitude, label=\"Episenter\")\n", "\n", "# menambah keterangan sumbu x dan y\n", "plt.xlabel(\"Longitude [deg]\")\n", "plt.ylabel(\"Latitude [deg]\")\n", "\n", "# menambah judul plot\n", "plt.title(\"Plot Episenter Gempa di Sekitar Mamuju\")\n", "\n", "# menambah garis grid\n", "plt.grid()\n", "\n", "# menampilkan legenda\n", "plt.legend()\n", "\n", "# menyimpan ke folder output dengan nama episenter.png\n", "plt.savefig(\"output/episenter.png\", dpi=144)" ] }, { "cell_type": "markdown", "id": "fallen-frontier", "metadata": {}, "source": [ "### Memanfaatkan `format` string untuk keterangan-keterangan plot\n", "Teman-teman kemudian dapat mengecek ke folder `output` untuk melihat gambar dalam ukuran yang asli. Kita juga dapat menggunakan `format` string untuk memberikan judul yang mengandung variabel tertentu. Pada contoh di bawah ini kita memberikan keterangan waktu pada judul grafik dengan menggunakan `format` dan `{}` sebagai *placeholder*. Variabel yang dimasukkan adalah waktu awal `waktu[-1]` dan waktu akhir `waktu[0]` yang dikonversi ke dalam tanggal saja dengan metode `date()`." ] }, { "cell_type": "code", "execution_count": 81, "id": "closing-register", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(longitude, latitude) # mengplot titik episenter\n", "plt.xlabel(\"Longitude [deg]\") #menambah label pada sumbu x\n", "\n", "plt.ylabel(\"Latitude [deg]\") # menambah label pada sumbu y\n", "plt.title(\"Persebaran Gempa di Mamuju pada \\n\" + \\\n", " \"{} sampai {}\".format(waktu[-1].date(), waktu[0].date())) #keterangan waktu pada judul\n", "plt.grid()" ] }, { "cell_type": "markdown", "id": "caroline-prime", "metadata": {}, "source": [ "### Mengubah warna dan ukuran plot\n", "Kita dapat melengkapi warna dan ukuran titik episenter sesuai dengan magnitudo dan kedalaman dengan menambahkan argumen `c` yang berarti `color` ke dalam fungsi `plt.scatter`, argumen `c` ini akan kita isi dengan kedalaman karena kita akan mewarnai berdasarkan kedalaman. Argumen `s` mewakili ukuran titik, akan kita isi dengan magnitudo yang mewakili ukuran titik. Pada akhir kode kita dapat menambahkan `plt.colorbar` untuk menampilkan skala warna." ] }, { "cell_type": "code", "execution_count": 82, "id": "current-typing", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYQAAAElCAYAAADk/ZWYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAA9JElEQVR4nO3dd5hcVf3H8fdnN72QBAIhJJDQRCBCgEiRFiBgDFWwgxCKiAVQUVpQFGz8UBRFxNCVKChFBAkQyoJ0EgiBQOiB0AIhdUnd3e/vj3M23Gym3NmZ3Zmd/b6e5z6Ze++5554zs5kz91SZGc4551xNuRPgnHOuMniB4JxzDvACwTnnXOQFgnPOOcALBOecc5EXCM455wAvEDosSSZpi3Kno9pJGi3prcT+TEmjy5eiwkg6W9IVFZCONd5HV5m8QGgFSbMlLZNUL2mupGsk9Sl3uiqJpK9IelzSR5Lej6+/LUnlTlsxzGxbM6vLdC7+HZikQ1sc/108Pr490phkZr80sxPa+76uY/ICofUONrM+wI7AKOCcQi5WUPb3X1KXNojzNOBi4EJgQ2AQcBKwO9Ct1PerMC8BRzfvxPf3S8CrZUuRcymV/QupozOzt4HJwAgASbtKekTSQknPJKsXJNVJ+oWkh4GlwGaSxkt6TdISSa9LOjIR/jhJL0haIOkuScNa3H5cvHaepAubCxhJm0u6T9KH8dwkSf0T8c6WdIakGcBHkrpIOlPSqzEdz0v6fCL8eEkPSfpNTMvrkj6X6f2Q1A84D/i2md1oZksseNrMjjSzFTFc9xjfm/Ep6zJJPeO50ZLeknR6fLp4V9JhksZJeknSfElnJ+75U0k3Srohpv8pSdsnzmfNW4b094y/9BdIeh74dIvzsyWNyXY9cBuwh6QBcX8sMAN4LxFHms/nR5JmxCesKyUNkjQ55uGe5vgzVcUk0xjfm+vShM3wXlwTP5cp8b4PJP8GJV0saY6kxZKmSdqzgPcx9Wfi2o8XCEWStDEwDnha0hDgv8DPgXWBHwI3SVo/ccnXgROBvsAHwB+Az5lZX+AzwPQY76HA2cDhwPrA/4B/tLj95wlPJzsChwLHNScL+BWwEbA1sDHw0xbXfhU4EOhvZg2EX7B7Av2AnwHXSRqcCL8L8CIwEPg/4EopY/XPbkB34NYM55J+DXwCGAlsAQwBfpI4vyHQI3H8cuAoYKeYzh9L2jQR/lDgX4T3/e/AvyV1jefy5S3pXGDzuH0WOCZPPlpaTsj7V+L+0cBfW4RJ8/kcAexPeI8OJvzoOJvwt1ADnFJgulrrSOB8wuc+HZiUOPck4fNrfs//JalHPJfvfSzkM3Htxcx8K3ADZgP1wELgDeBSoCdwBvC3FmHvAo6Jr+uA8xLnesc4jgB6trhuMnB8Yr+G8FQxLO4bMDZx/tvAvVnSexjwdIv0H5cnj9OBQ+Pr8cAriXO94v03zHDdUcB7LY49EvO5DNiL8IX4EbB5IsxuwOvx9egYtjbu94332yURfhpwWHz9U+CxFu/Vu8Ce+fKW4dxrLd7XE4G3Wrx3Y7Jcew3hx8AewKNAf2Bu/Nt4CBhfwOdzZGL/JuDPif2TgX8n3qu3WsS3Oo3xvbkuTdgs+bk+sd8HaAQ2zhJ+AbB9mvexkM/Et/bb/Amh9Q4zs/5mNszMvm1my4BhwBcVqosWSlpI+HJI/vKZ0/zCzD4CvkyoX39X0n8lfTKeHgZcnIhnPuGLdEimuAgF00YAsXrheklvS1oMXEf4hUeWa5F0tKTpifuNaHHN6ioPM1saX2ZqSP8QGKhE24SZfcbM+sdzNYRfub2AaYn73RmPr47HzBrj62Xx37mJ88ta3D/5vjYBb/Hx+5Evb0kbsfb7WhAze4iQlwnA7fFvY7WUn0/LvObKe1tKvq/1hL/D5vf1hwpVmovi+9qPj/OR830s8DNx7cQLhNKaQ3hC6J/YepvZrxNh1phe1szuMrP9CYXGLELVSHNc32wRV08zeyRx+caJ15sA78TXv4z3+ZSZrUP41d6yemd1OmK98OXAd4H14pf3cxmuSeNRYAWhCiebeYQvtW0TeetnoZG+tVa/FwptKUOBd1qRt3dZ+31tjeuA01i7ugjSfT5pfUQoXAGQVMuaBWtrwzZLvq99CNVD78T2gtMJDeYD4vu6iI/zkfV9LPHfmyshLxBK6zrgYEmflVQrqUdsyBuaKXD8pXiopN6EL9F6oCmevgw4S9K2MWw/SV9sEcWPJA2I7RinAjfE431jXItiu8aP8qS7N+EL6oN4r2OJjeSFMrOFhDrhSyV9QVJfSTWSRsb7NP+Cvxz4naQN4j2HSPpsa+4Z7STp8Phk8j3C+/lYK/L2T8L7PiB+bie3Mj1/ILQBPJjhXKGfTy4vAT0kHRjbTM4htOEUG7bZOEl7SOpGaEt4zMzmxDw0EN7XLpJ+AqyTuC7X+1iyvzdXWl4glFD8j9LcGPwB4Vf+j8j+PtcAPyD8sp8P7A18K8Z1C3ABcH2sVngOaNmz51ZCXfp0QmP2lfH4zwgNzYvi8ZvzpPt54LeEX/dzgU8BD+fPcdb4/i/m6/QY31zgL4Q2luYnnDOAV4DHYv7uAbZq7T0J78WXCfXYXwcON7NVrcjbzwjVG68DdwN/a01izGy+md1rZpkWHCno88lzn0WE9qMrgLcJTwEZB4AVEjbh74QG4vmEBv2j4vG7CNV8LxHer+WsWUWU9X0s9d+bKx1l/nt1ruOQ9FNgCzM7Kl/YzkbSecBQMzsub+C1r72G0BBc0Bgb13H5E4JzVSp2C96G8CvdubxKPkrVOVcxniK0pXy33AlxHYNXGTnnnAO8ysg551zkBYJzraAwr1Ch01o4V9G8QGhHChO6XSnpjTip13S1mCRO0n6SZklaKul+rTmZ2G8kvRyvnSXp6BbXTpT0oqQmpZhqWdJIhUnJlsZ/RybO7RPvv0jS7BRx5Qwv6XxJz0pqiL2COjQz+5yZXZvpnKRj4vu5WGGSvv9LjtyWtK6kWxQmrntD0tcS5w5UmEhwoaT3JF0hqW/i/JcUJk9cKqkuXzrj39xVMS3vSfpB4lw3hUkBZytMzz06T1y7Kkx0N1/SB5L+pcT8Q7GQrE9sKyU9my+NrnJ4gdC+uhD6au9NGOZ/DvBPScMBJA0k9En/MWFE6FQ+HmwGod/4wfHaYwhTW3wmcf4ZQj/zp/IlJA40upUwmG4AcC1wazzefK+rSD9oKl/4VwjjEv6bMr6OrBdhcNxAwqSA+xEmOmz2J2AlYVrwI4E/Kw5AJHy2P+fjie+GEKYRbzYf+D1hcsA0fgpsSZgKZR/gdEljE+cfIs4/lSKuAcBEYHiMbwlwdfPJWEj2ad4IY07+lTKdrhKUezKlzr4RpkY+Ir4+EXgkca43YYqHT2a59j/AaRmOZ51ILRHmAMLgJCWOvUliQrJ4bAwwu4D85AxPKIB+mieOnQmF4WLCwKWLEuf+RfjyWkQYBbxt4tw1hIkGJxNGAj9MmDX194QBa7OAHRLhZwNnAc/H81cDPeK5AcDthAGGC+LroYlr64ATUr4nPwBuS3ymK4FPJM7/Dfh1lmsPB57NcPwEoC7Fvd8BDkjsn09iwrrE8beA0QX+7e4ILMlybjhhIrzhbfH/xre22fwJoYwkDSJMbzwzHtqW8CsfWD353avxeMtrexLmmJ/Z8lxK2wIzLP7vjWZkulcZXAxcbGGen80J0yA0m0z4xbsB4UloUotrv0R48hpI6HL5aAw3ELgRuKhF+CMJ0zNvTvgsmgdh1RAKiGGEeXiWAZe0Mj978fHn9AmgwcxeSpx/huzve/LagiismTCYxN9UnnsVKlfajgb+Z2azS3Qv1w68QCiTOJfMJOBaM5sVD/ch/PJNWkSYN6alywj/ue9qZRIKuVd7WwVsIWmgmdWb2WPNJ8zsKguL7qwgVIdsr7AoT7NbzGyamS0HbgGWm9lfLcycegOwQ4t7XWJmc8xsPvALwjoRmNmHZnaTmS01syXx3N6FZkTScYQ1K34TD/UhPPkkZXzfJe1PqBr8SctzKTVPFpj8nEvyGUvajpCubFWERxOe2FwH4gVCGSjMxvk3QtVBctBQPWtOEEbcX9Li+gsJk4F9qcUv/Fz3TDb2bZL2XlniOjsR12Vp7l+g4wm/pGdJelLSQfG+tZJ+rbDS1mJClQ+sOW1yodNGZ5tCvJekv8RG38WE6qn+CjOEpiLpMMJCOJ8zs3nxcNrPeFfCPEJfaPE0ket+lyU+l7PjvZrjz3qvLHFtkvybaXFuC8KT2qlm9r8M1+5BqKq7MU26XeXwAqGdSRJhErpBhLaDVYnTM4HtE2F7E6oyZiaO/Ywwyd0BZtbyl2ZWlmjsM7M3Y5zbxfQ0244U1RMWFm5vjuuktGkoIK0vm9lXCdVCFwA3xvfia4TJA8cQGl+Hx0uKmTY52xTipxEm29slVl3tVci9YsPt5YS1t5M9bV4izA66ZeLY9qz5Ge9AaB86zszuTZsRMzsp8bn80swWEKah3j4RbI175YjrTVuzgbg5bcMIExGeb2bZJv47BrjZwvoJrgPxAqH9/ZnQe+Rga7FwCqGKY4SkIxSWIvwJoZ5/FoCkswhfimPM7MOWEcduhD0IX1pdFabfzvYZ1xEa/U6JXRObn1Tui3HVxLi6hl31SPRAWku+8JK6xvM1hC/EHtl+bUs6StL6FqbJXhgPNxGqOlYQFtrpRVhXoFjfkTRU0rqEBW2SU4gvAxbGc+emjVDSvoTqwCPM7InkudgudDNwnqTeknYnFHJ/i9eOIMwierKZ3ZYh7tr4PnYBauL72LVluIS/AucoTEP9SeAbJKpy4mffvOxltxhfxkJPYaru+wjVbBmfDGPb1pfw6qKOqdyt2p1pIzRQGmGq4PrEllwucQyhN8wywpf28MQ54+N1E5q3sxPn62KY5DY6R3p2IEyfvYzQ8JrsgTM6Q1x1OeLKGZ7wBdHy/PgscV0HvB/zN5OPl8rsQ+gqu4RQvXN0jGeLxD1+nojnhBZp2ILQoNu8P5uPexktJHS97RXPbRTfz3rCr/pvxnt1SbzXGXsZAfcT1gpIfk6TE+fXBf5N6Kr7JvC1xLmrCYVf8tqZifPjM7yP1+T4XLoTugM399j6QYvzszPENzxLXOfG88m01bcI89X42Shbmnyr3M3nMnKdlsIAuhPM7J5yp8W5SuBVRs455wAvEJxzzkVeZeSccw7wJwTnnHNRVa6YNnDgQBs+fHjOMB999BG9e/dunwS1s2rNW7XmCzxv5TJt2rR5ZrZ+MXF8dp/e9uH8xnT3m7HiLjMbmz9keVRlgTB8+HCmTp2aM0xdXR2jR49unwS1s2rNW7XmCzxv5SLpjWLjmDe/kcfvGpoqbNfBrw7MH6p8qrJAcM659mM0WlO5E1ESXiA451wRDGiiOjrneIHgnHNFasKfEJxzrtMzjFVeZeScc86ARq8ycs45B9XThuAD05xzVWHxh0t4bcYbtPfsCwY0mqXaKp0XCM65Dm/RvMUcs+XJnLLb2Vz38/ZfqK0p5ZZGXPPiaUm3x/1rJL0uaXrcRpY8A1FZqoziEpAHE5aQfBU41swWZglbC0wF3jazg9otkc65DmPe2/NZuWIVK5et5IXHXm7XextW6jaEU4EXWHPp0x+ZWZuXdOV6QpgCjDCz7QiLj5yVI2zzm+Occxlttt0wvnz6oXx67Ei+/bvx7XpvM1iVcstH0lDgQOCKtk53JmV5QjCzuxO7jwFfyBQu8eb8AvhBOyTNOdcBSeLoc79UrrvTmH5Z74GSkvPqTDSziYn93wOnE5ZwTfqFpJ8A9wJnmtmK1qY2l0roZXQcH69j29LvyfzmrEXSicCJAIMGDaKuri5n+Pr6+rxhOqpqzVu15gs8bx2ZAU3pa4zmmdmoTCckHQS8b2bTJI1OnDoLeA/oBkwEzgDOa2Vyc2qzAkHSPcCGGU5NMLNbY5gJhLVnJ2W4Ptubk1EsZScCjBo1yvJNplXJE24Vq1rzVq35As9bR1fAE0IuuwOHSBoH9ADWkXSdmR0Vz6+QdDXww1LcLJM2KxDMbEyu85LGAwcB+1nmfmL53hznnCu7MDCt+ALBzM4itqfGH8E/NLOjJA02s3clCTgMeK7om2VRrl5GYwlVQXub2dJMYbK9Oe2VRuecS8OAVdam/XMmSVofEDAdOKmtblSuNoRLgO7AlFDo8ZiZnSRpI+AKMxtXpnQ551xBDNFY4g6bZlYH1MXX+5Y08hzK1ctoiyzH3wHWKgySb45zzlWaJitJG0LZVUIvI+ec67BK1YZQCbxAcM65oojGtm1DaDdeIDjnXBHCimleIDjnXKdnJlZabbmTURJeIDjnXJGavA3BOedcaFT2KiPnnHPeqOyccw68Udk551xCow9Mc845Z4hVVh1fpdWRC+ecKxNvVHbOOQfEye28ysg55xx4o7JzzjnADO926pxzrrlR2aeucM45hzcqO+ecIzwh+AI5zjnnAH9CcM45R5y6okoalasjF845VzaiMeWWKjapVtLTkm6P+5tKelzSK5JukNStrXLiBYJzzhXBgFVWm2pL6VTghcT+BcDvzGwLYAFwfGlz8DEvEJxzrghmoslqUm35SBoKHAhcEfcF7AvcGINcCxzWNjkpUxuCpAuBg4GVwKvAsWa2MEO42cASoBFoMLNR7ZhM55xLpYCBaQMlTU3sTzSziYn93wOnA33j/nrAQjNriPtvAUOKSGpO5WpUngKcZWYNki4AzgLOyBJ2HzOb135Jc8659MJ6CKm7nc7L9sNW0kHA+2Y2TdLo0qSuMGUpEMzs7sTuY8AXypEO55wrXslWTNsdOETSOKAHsA5wMdBfUpf4lDAUeLsUN8ukErqdHgfckOWcAXdLMuAvLR6t1iDpROBEgEGDBlFXV5fzpvX19XnDdFTVmrdqzRd43jqy0O20+IFpZnYWobaE+ITwQzM7UtK/CD+arweOAW4t+mZZtFmBIOkeYMMMpyaY2a0xzASgAZiUJZo9zOxtSRsAUyTNMrMHMwWMhcVEgFGjRtno0aNzpq+uro58YTqqas1bteYLPG8dWTvMZXQGcL2knwNPA1e21Y3arEAwszG5zksaDxwE7GdmliWOt+O/70u6BdgZyFggOOdcuZR6+mszqwPq4uvXCN99ba4s3U4ljSW0pB9iZkuzhOktqW/za+AA4Ln2S6VzzuUXpr9Wqq3SlWscwiWEblVTJE2XdBmApI0k3RHDDAIekvQM8ATwXzO7szzJdc657JpMqbZKV65eRltkOf4OMC6+fg3Yvj3T5ZxzhQqznVbHGN9K6GXknHMdVpi6wgsE55xz/oTgnHOuWQEjlSuaFwjOOVeE5l5G1cALBOecK5JXGTnnnPM1lZ1zzgUGNPgTgnPOOfAqI+eccwAdZBRyGl4gOOdcEQpcIKeieYHgnHNF8icE55xzJVsgpxJ4geCcc0UwREOTNyo755zD2xCcc84BmFcZOeecw9sQnHPOJXiB4JxzDkM0VkmjcnXkwjnnyqgJpdrykdRD0hOSnpE0U9LP4vFrJL0e16CfLmlkW+TDnxCcc64IVtpG5RXAvmZWL6kr8JCkyfHcj8zsxlLdKBMvEJxzrkhWogLBzAyoj7td42Zpr5d0eIpgy83sjkwnvEBwzrmiFDS53UBJUxP7E81s4hqxSbXANGAL4E9m9rikbwG/kPQT4F7gTDNbkSH+y4FbIWf91F5A5RQIki4EDgZWAq8Cx5rZwgzh+gNXACMIpeRxZvZo+6XUOefyK+AJYZ6ZjcodlzUCI+P33y2SRgBnAe8B3YCJwBnAeRkun2xmx+WKX9J12c6Vq1F5CjDCzLYDXiJkNpOLgTvN7JPA9sAL7ZQ+55xLxQwam5RqKyxeWwjcD4w1s3ctWAFcDeyc5ZqjUsSbNUxZnhDM7O7E7mPAF1qGkdSP8GgzPl6zkvBE4ZxzFaVUU1dIWh9YZWYLJfUE9gcukDTYzN6VJOAw4Lk88dQCBwLDSXzPm9lFua7LWiBI2jFF+leZ2bMpwuVyHHBDhuObAh8AV0vanlCndqqZfZQpEkknAicCDBo0iLq6upw3ra+vzxumo6rWvFVrvsDz1pEZpWtUBgYD18Yv9Brgn2Z2u6T7YmEhYDpwUp54bgOWA88CTWlvnusJ4QHgSXI3TmxKKIHWIukeYMMMpyaY2a0xzASgAZiUJW07AifHRpWLgTOBH2e6X2yYmQgwatQoGz16dI5kQ11dHfnCdFTVmrdqzRd43jq20q2YZmYzgB0yHN+3wKiGxir5guQqEJ7MlwhJ92U7Z2Zj8lw7HjgI2C92tWrpLeAtM3s87t9IKBCcc66iZPwGK6/Jkg5oUT2fV9YCIU2J1IpSCwBJY4HTgb3NbGmWuN+TNEfSVmb2IrAf8Hxr7uecc22phFVGpfIYoYdSDbCKUNNjZrZOrovyNipnaUtYBLxhZg2tSSlwCdAdmBLaSHjMzE6StBFwhZmNi+FOBiZJ6ga8Bhzbyvs551ybCL2MKm4WoIuA3YBns9TAZJSml9GlhLr8GYRSZgQwE+gn6VuFPpIAmNkWWY6/A4xL7E8HcvbZdc65cqvAKqM5wHOFFAaQrkB4BzjezGYCSNqGMCDidOBmoOACwTnnqkkFVhm9BtTFeZBWj2hudbfThE80FwYxwuclfdLMXovVPc4512kZqsQC4fW4dYsbpJgTKU2BMFPSn4Hr4/6XgecldSc0VjjnXKdWeTVG/NXMXk8ekPTpfBelaQkZD7wCfC9ur8Vjq4B9Ckujc85VGQNrUqqtHd0oaUjzjqS9gKvyXZT3CcHMlkm6FLg9dv9Mqs90jXPOdSYVWGV0EvBvSQcTOgX9ikSHnWzyPiFIOoQwVPrOuD9S0n+KSqpzzlURs3Rb+6XHngROIXT6+Skwxszm5LsuTRvCuYSZ9erijaZL2rTVKXXOuSpS4rmMiiLpNtZs0uhFGDd2pSTM7JBc16cpEFaZ2aIWPYoqsA3FOefKwIAKKRCA3xRzcdpeRl8DaiVtSXgMeaSYmzrnXDWplIFpZvZAMden6WV0MrAtYXDDP4DFhN5GzjnnSNfDqD16GUm6vZgwaXoZLQUmxM0551xLFfKEAOyRp9OPgG2yncy1QE7Lxok15GuccM65TsEqp1EZODRFmKwrT+Z6QmhunDicsNBN88LMXwXmpkqac851BhXyhFBsG0Ku9RAeAJD0WzNLzjh6m6SpxdzUOeeqS8U8IRQlTaNyb0mbNe/EMQi92y5JzjnXwTSl3Cpcmm6n3ydMo/oaoRgcRlzM3jnnOr3KGodQlDS9jO6M4w8+GQ/NMrMVua5xzrnOpFTjECT1AB4krCjZBbjRzM6NNTPXA+sB04Cvm1nWxmFJuxOmrBgW42leQnOzbNdAjiqj5NKZZrbCzJ6J24pMYZxzrtOylFt+K4B9zWx7YCQwVtKuwAXA7+JqkwuA4/PEcyVhGc09gE8TVp7MO/11rieEqyWNJndryZXADvlu4pxzVa1EVUZxycvmWaS7xs2AfYGvxePXEn79/zlHVIvMbHKh989VIPQjPJrkyukHhd7QOeeqjdJXGQ1s0UtzoplNXCMuqZbw3bsF8CfgVWChmTXEIG8BQ8jtfkkXEpY5Ti6h+VSui3J1Ox2e54bOOedMkH5ainktuvGvHZ1ZIzBSUn/gFj5uvy3ELvHf5L2anzSyStPLyDnnXC5tMDDNzBZKuh/YDegvqUt8ShgKvJ3n2latZlmWAiE+yhxMGEL9KnCsmS1sEWYr4IbEoc2An5jZ79spmc45l07pehmtT1hyYKGknsD+hAbl+4EvEHoaHQPcmiKuAwkTk/ZYnUyz83Jdk2ZgWluYAowws+2Al4CzWgYwsxfNbKSZjQR2ApYSHp+cc66ylK6X0WBC/f8M4ElgipndDpwB/EDSK4Sup1fmikTSZcCXCbNVC/gioQtqTnmfEBRWxjkS2MzMzpO0CbChmT2R79pszOzuxO5jhJIvl/2AV83sjdbe0znn2kQJB6aZ2Qwy9Nw0s9cIK1em9Rkz207SDDP7maTfAnl7HaWpMrqUMOh6X+A8YAlwEyn6tKZ0HGtWDWXyFcJaDFlJOpE4gnrQoEHU1dXljLC+vj5vmI6qWvNWrfkCz1tHV0Avo/ayLP67VNJGwIeEp4+c0hQIu5jZjpKeBjCzBZK65btI0j2EWVJbmmBmt8YwE4AGYFKOeLoBh5ChWikpdt2aCDBq1CgbPXp0zvTV1dWRL0xHVa15q9Z8geetw6u8AuH22EvpQuApQgqvyHdRqjWVY79Yg9WNHnmnaTKzMbnOSxoPHATsFwdjZPM54Ckz8ym3nXMVqdKeEMzs/PjyprhCWg8zW5TvujQFwh8IjbkbSPoFob7/nFanFJA0Fjgd2DuuyJbLV8lTXeScc2VVYZPbxR/xBwLDid/zkjCzi3Jdl2Zyu0mSphEadgUcZmYvFJneSwiTN00JbdY8ZmYnxbquK8xsXMxAb0K3q28WeT/nnGsb6XsQtafbgOXAsxQw8XauJTTXTey+T+JXuqR1zWx+KxIJQJygKdPxd4Bxif2PCF2snHOuclVegTA0dusvSK4nhGmEbArYhDDDnoD+wJvApoWn0Tnnqo8qb/GbyZIOaNHFP6+sA9PMbNM4d/Y9wMFmNtDM1iM0BBd0E+ecq2qlG5hWKo8Bt0haJmmxpCWSFue7KM1I5V3N7I7mnTil6meKSKhzzlUNWfqtHV1EmAOpl5mtY2Z9zWydfBel6WX0jqRzgOvi/pHAO61Pp3POVZkK62UEzAGey9Olfy1pCoSvAufy8TxCD8ZjzjnnoBIblV8D6iRNZs31EIrudjofOLXo5DnnXJWqtIFpwOtx6xa3VNJMbnc/Gco/M8u50IJzznUKVnm9jMzsZ625Lk2V0Q8Tr3sARxDmH3LOOQcVV2UUpxg6nbXXQyhuxTQzm9bi0MOSWj31tXPOVZ0KKxAIE4beQBgmcBJhUZ0P8l2UpsooOWK5hrBYTb/WpdE556pPBbYhrGdmV0o61cweAB6Q9GS+i9JUGSVHLDcQGiqOLyqpzjnn2tKq+O+7cSnNd4B1c4QH0hUIW5vZ8uQBSd0LT59zzlWpyntC+LmkfsBpwB+BdYDv57soTYHwCLBji2OPZjjmnHOdT2X2Mro9vlwE7JP2ulyznW4IDAF6StqBUGUEoaTp1cp0Oudc9amQJwRJfyRHaszslFzX53pC+CwwHhhKmBej2RLg7PRJdM656iVK16gsaWPgr8Agwhf7RDO7WNJPgW/wcU+hs5NzzCVMLeb+WQsEM7sWuFbSEWZ2UzE3cc65qla6J4QG4DQze0pSX2CapCnx3O/M7Dc5kxG+t1stV5XRUWZ2HTBc0g8y3DjnnBjOOdcplHAmUzN7F3g3vl4i6QVC1X1B4sC0M4BtKGBgWq7pr3vHf/sAfVtsfQpNoHPOVa2mlFsBJA0HdgAej4e+K2mGpKskDchz+STgBcJCZj8DZgOtH4dgZn+JL+8xs4dbJHT3fBE751xnUcATwkBJyXr+iWY2ca34pD7ATcD3zGyxpD8D5xMqp84Hfgscl+M+bTYw7Y+s3cU00zHnnOuc0hcI88xsVK4AkroSCoNJZnYzgJnNTZy/HLg9y+XNSjswTdJuhJXR1m/RhrAOUJsvYuec6xRKuDymJAFXAi8k22klDY7tCwCfB57LE1XJB6Z1I7QVdCG0GzRbDHwhX8TOOddZlHAuo92BrwPPSpoej50NfFXSSELRMxv4Zq5ISj4wLVHvdI2ZvZE2wjQkXQgcDKwEXgWONbOFGcJ9HziB8CY8G8MtbxnOOefKqnS9jB7i40HASZnGHKyl2IFpuXoZNVsq6UJJd0i6r3lLk7gcpgAjzGw74CXgrJYBJA0BTgFGmdkIQjXVV4q8r3POlZya0m3tYCphQtIehHbel+M2khQrp6VpVG7VvNq5mNndid3HyF4F1YUwdcYqwnQZ7xRzX+ecK7kStiEUq3lgmqRvAXuYWUPcvwz4X77r0xQIreq+VIDjCAXOGszsbUm/Ad4ElgF3tyhI1iDpROBEgEGDBlFXV5fzpvX19XnDdFTVmrdqzRd43joykbmOp8wGEBqS58f9PvFYTmkKhFZ1X5J0D7BhhlMTzOzWGGYCYaj2pAzXDwAOJQysWAj8KzF6ei2xL+9EgFGjRtno0aNzpq+uro58YTqqas1bteYLPG8dXoU8IST8Gnha0v2E8mov4Kf5LkpTIGTqvvS9fBeZ2Zhc5yWNJ1RD7Wdmmd7OMcDrZvZBDH8zoRtsxgLBOefKpdJWTDOzqyVNBnaJh84ws/fyXZe3UdnMbjezRWb2nJntY2Y7AZsXk1hJYwkLQB9iZkuzBHsT2FVSr9g3dz/CUGznnKsslnJrJ/E7cwywfayR6SZp53zXpelllMlak90V6BLC2IYpkqbHBg8kbSTpDgAzexy4EXiK0OW0hlgl5JxzFcMqqpdRs0uB3YCvxv0lwJ/yXZSmyiiTotpQzGyLLMffAcYl9s8Fzi3mXs451+YqrMoI2MXMdpT0NICZLZBUkm6nmVRe9p1zrkwqrQ0BWCWplvhdHafDzvuMkmsuoyVk/uIX0LOViXTOuepTeQXCH4BbgA0k/YIw1uucfBflmrqib7ZzzjnnPlYpTwiSNjazOWY2SdI0QmccAYeRojNQaxuVnXPOQXg6aIMFclppSlxYBzObZWZ/MrNLCA3MF+e72AsE55wrgghPCGm2dvAD4G5JW65On3QmYerrvfNd3NpGZeecc80qpMrIzO6QtAKYLOkwwmzROwN7mdmCfNd7geCcc0VSxskWysPM7pV0LFAHPALsm3bZAC8QnHOuGBU022mid6iA7oRG5ffjyGUzs3VyXe8FgnPOFalSehkV2zvUCwTnnCtSO09L0Wa8QHDOuWJVyBNCsbzbqXOuQ3ll+ut8bdhJ/PJrvyfzzPntLGWX00qpVsrFCwTnXIfy0M2PM++t+dTd8DDLl64od3KCCpv+urW8ysg516Ec9M39eXX6bLbbext69u5R7uSsHphWkrikjYG/AoMIRchEM7tY0rqEpYaHA7OBL6UZV1Aof0JweU17YQ5fPPNq/n7ntHInxTkGDlmP8/9zJl887ZByJ2U1NVmqLYUG4DQz2wbYFfiOpG2AM4F7zWxL4N64X3JeILi8rvnvE7zx3gIuv/XRcifFucqTtrooRXlgZu+a2VPx9RLCKpFDCOvLXxuDXUuYrK7kvMrI5TX+wJ2Z++FiDtt7u3InxbmKVEC304GSpib2J5pZxpUg4yR1OwCPA4PM7N146j1ClVLJeYHg8tpp643556+OLXcynKtc6dsQ5pnZqHyBJPUBbgK+Z2aLw0DjeCszk9qmz5JXGTnnXJFK2e1UUldCYTDJzG6Oh+dKGhzPDwbeb4t8eIHgnHPFMMAs3ZZHnHPoSuAFM7soceo/wDHx9THAraXOBniB0GnNeuJlTt19AtdfcAt33zSVH3zlUmY8/ir3THqQa869gZUrVq0O++BNj3L0lt/lyrMnFXSPmy/+L2eO/TlvvPBWqZPvXEVRU7othd2BrwP7Spoet3HAr4H9Jb0MjIn7JedtCJ3Upd+7hhcee4lZT7xCly02o6nJuPicm3jr/qnUdKll409sxH5H7gnAJSdfxYL3FvKv397G4aceyIBB/fPGX7/wI/7yw7/S1NjEFWdcx/n/aZNecs6VXSnHIZjZQzHKTPYrzV2yK8sTgqQLJc2SNEPSLZL6Zwl3qqTnJM2U9L32TWV1+8yho6iprWGTrYfwqV02QzVil/224VN7bcOADfqxzW6fWB12h/0+RbceXRm0yfr0XbdPqvh7rdOTzbYfRk1tDbsftnNbZcO58ktbXVQJ02zkUa4nhCnAWWbWIOkC4CzgjGQASSOAbxBW+1kJ3CnpdjN7pd1TW4W+csbnGXfCGHr370VNTQ31i5fRq28PLtq6Lw3zF9FlYO/VYc+49rscdc4RDBq2Pl26rv0n8+7rc/nDty9n462G8M3fHk1tbS01NTVc+uQFrFi2ki5da7l8wj9YtbyB43/+Zbr37FZU2m+74XFmvzyX8SePoW+/XkXF5VwpdIR5itIoS4FgZncndh8DvpAh2NbA42a2FEDSA8DhwP+1fQo7h3XW+3jq9L79evHwrNn889EZrGxoZECfXpz7xTEA1NTUsPFWQ7LGc8UZ1zHt7hk899Asdh63I6MO2B4ASfTo1Z0Hbnqc2/5yL2bG8G2HMu64fVqd5jmvf8DE395FY2MTPXt354Tvf7bVcTlXMlVSIKjcswVKug24wcyua3F8a0JL+m7AMsJw7almdnKWeE4ETgQYNGjQTtdff33O+9bX19OnT7rqj46mtXlb1dDIq3PnYxiD+/elf++eqa5bMHcRH74zH4Bh22xM1+5r/s5YuXwVb774DgBDt9iQHr27F5w2CPnq1as3s1+ZS1OjseHQAfTpW/65bErB/x7LY5999pmWZlxALn37D7Ud9zw1VdgHbz+96Pu1pTZ7QpB0D7BhhlMTzOzWGGYCYe6OtbqvmNkLsTrpbuAjYDrQmO1+cbTfRIBRo0bZ6NGjc6avrq6OfGE6qjR5m/f2h9z0+/+y0/7br/5FD7D9onoWL1vOFhsOTH0/M+Plp15jwKD+rD90vYxhFu64mMbGJtYb3D91vC0152v5biv5qH4F661f1OJQFaWz/z12aAY0VscjQpsVCGY2Jtd5SeOBg4D9LMtjipldSeiTi6RfAt5/sUR+e8KfmTZlBv/+42RunncVPfuEp4EN+vVhg36F/ZqTxCd22jxnmP4b5FzKtSA9enajR5HtEM6VkrchFEHSWOB0YO/mNoIs4TYws/clbUJoP9i1vdJY7QZvNohuPbrSs09PunbvWu7kONexdYAeRGmUq5fRJUB3YEqco+MxMztJ0kbAFWY2Loa7SdJ6wCrgO2a2sCyprULf+cNx7PvVPdj4k0My9hxKY+YjL1K/oJ6dx+1Icq6VZi8/9RqzHn+ZPb+wK/+88FZWrWjgmPO+wnPTZrPxZhswZHj6aql8Vq5o4Il7Z7LVDsNYv4hqKedaw58QimBmW2Q5/g4wLrG/Z7slqpOpra1lxB5bt/r6t156h9P3Pw9JnHXdKWuNNVj20XK+t+ePsSZj8pX3MnvmW5gZb8xZxIuvzKemVtzw+E/o1q00f4JX/eo27pj0MP3W7c3fHv9ZSeJ0LpUOshpaGj5S2bVKtx5dkcCamujZZ+2ePrW1NXTt1oWGVQ307NsT1QgZ9O7bHTOjW/eu1GR4qmit3uv0AINeGdLiXFsSIG9Udp3ZBpusz+UzLmLpkmUM22YoU/72AIM33WD1U0e3Ht34yY2n8cQdT3Pkj4/ggRsepWFlAwd+cwxzXvuAgYP60aVrbcnSc9T3x7LLftsydPMNShanc2nJ2xBcZzd4s7BGx5Vn/51bLv4vAH968tcM22ZjPlq8lHMP+z+syVg0bzFnXPvx8JHNPrlRydMiiU9sv0nJ43UuL68ycu5jq1asoqnJUI1obAhTOlqT0dRkWJOxKjFzqnPVp2PMU5RGpy8Q3n1tLv03WGd1P3y3tuXLVnDXPx5llwM+xYaJgWfvzX6f5R+t4Niff4XaLrUMH7Exm203DIA+/XtzUd3PeOHxl9n/6L3LlXTn2oX3MqoC9076H785/lIGDOrHda9fSk2NLw+RyUl7nse7s+bwl+7duP2DidTU1PDOq+9x4nanYcDBJx3AbZfdTW1tDTt/bgf6DQyD0Lb69BZs9emMHcqcqy5V8oTQqb8BP5gzj5oasXjeEpoa06+S3dksmV8PBo0rG2iKvSmWLPhodbXpe7Pfx5qaaGxoZFn98vIl1LlysNDLKM1W6Tr1E8IRPziI9TZal81HDm/14KzO4IJ//5A/nX09nztqDz5atJQ3XnibbXbdgjP/ejKL5i1hv6/vxZ1X3MuQLQez4fANWLBoKf3X6UljQxP1S5bRP+UaCs51WJX/XZ9Kp/4W7Nqtq9dvp1A3eQavzF7If65/givOuI7lS1ewy9iRTPjbd1eH+fwpYTzhX/72IH+/5Un22nULPnhiDm++Po9TJhzE2MMrdoJH54pWLd1OO3WVkUvnpefeprGhkTmvzOWjRUtZsXQlr8/MPM/gzJfexTBefHUub82eBxgvznynfRPsXHvzFdNcZ/H9Xx7Bv695mN0P2Ja3X5jDw/+ZxjE/PnyNMEuXLKNbj66ccdL+TLr6Pg4+YldW1q9kxtTZHPY1n5PQVTEDqqQJ0gsEl9fgjdfjWz8+BIDtdtmcz40fvcb5JyY/zbmHXUC/9ddh0LD1efWZ2Tx3bR1Xz7qY7T+9WRlS7Fz7EVayKiNJVxGWBXjfzEbEYz8lLCf8QQx2tpndUZIbtuAFgiva9PufpanJWDK/nkUfLqFhRQNzZ3/AsiXL6dO/d/4InOvomkr2iHANYTbov7Y4/jsz+02pbpKNFwidzMrlK6mprWl1r6qPFi/l3Vfnsul2m1BbG+Yi+uJph/D+m/MYtu3GrD9kPf7+q5sZe+w+qwsDM2ParDk0NDaxy7bDMk6V7VyHVcIqIzN7UNLw0sRWOC8QOpFZT77Kjz73S7p268qfHj6PwZsWNhHckgX1HLf1qSyrX86OY7bjvH+fAcCAQf055/ofrA439rh917hu0p1TmXjLo0jiS2NG8p0v+qzmrroUUGU0UNLUxP7EuPxvPt+VdDQwFTjNzBYUmsY0vJdRJzJ1ygwaVjSwamUDMx99ueDr58x6m+UfrWDF0pU8dc+zqa979Nk3WL6ygWUrVvHos28UfF/nKl76XkbzzGxUYktTGPwZ2BwYCbwL/LatsuEFQidywNF7sfn2w/jkqM3Y7cAdCr5+y502Y6tRm9Olay1fm3B4/guiI8fuRLeutXTtUsvR43w8gqs2KQuDVjY8m9lcM2s0sybgcmDnfNe0llcZdSIbDF2PSx46r9XXd+3Wld/cX/hqZJ/ZblPu/MNJWJPRt7cvYOOqjAFtOC2FpMFm9m7c/TzwXFvdywsE1y769Oxe7iQ412ZK2O30H8BoQlvDW8C5wGhJIwlFz2zgmyW5WQZeIDjnXLFKVCCY2VczHL6yJJGn4G0ILq/f//gf7N/ra5wwxhevd24tBjRZuq3Cla1AkHS+pBmSpku6W1LGdRUlHSPp5bgd097pdDD5D3fA8lXMvu85Fn64pNzJca7CtG2jcnsq5xPChWa2nZmNBG4HftIygKR1CXVouxBa1s+VNKBdU+nY4bBPY0C/Twymn09l7dzaqqRAKFsbgpktTuz2JvOM4p8FppjZfABJU4CxwD/aPoUdz4KV9fzl5bvZtqG0y4H++tpTaLzqO6tHJjvnEgyokgW2ytqoLOkXwNHAImCfDEGGAHMS+2/FYy6Df735CP95+0kGrBhR8ri9MHAuGwPzAiEvSfcAG2Y4NcHMbjWzCcAESWcB3yVUD7X2XicCJwIMGjSIurq6nOHr6+vzhuloNmmE41Zux7rWs+ryBtX5mTXzvHVwHaA6KI02LRDMbEzKoJOAO1i7QHib0Ce32VCgLsu9JgITAUaNGmWjR4/OFGy1uro68oXpaKxpPrbkTzz41Miy5e0v5/yTyX97iFH7bctZl3+D2toaGhubuPZfj7JyVSPHf2V3unZt3dNGNX5mzTxvHVhzL6MqUM5eRlsmdg8FZmUIdhdwgKQBsTH5gHjMZWBL/gjL/g6Nb2LW/ovdz5+7iNuveoAVS1cy7d6ZvDw9zFs09Zk3+PstT3Lj7U/xwGOFz6HkXMWrkkblcvYy+rWk5yTNIHzRnwogaZSkKwBiY/L5wJNxO6+5gdll0G0Xws+VHkC3dr99n3696NW3B916dAWJDYasC8CwoetSW1uDBJsPH9ju6XKuzVVJgVDOXkZHZDk+FTghsX8VcFV7pasjq+k5FuvxNMx6HKn9y/puPbpyyX0TeGLKc3zqM1uy7ob9ANhwg358//sHsHxVA8OHrtfu6XKuTZlBY2O5U1ESPnVFlZFK2+W0UOsPWZcDx++1xrHn35zLuf+4GyEGr7cOu2y1SZlS51wb6QC//tPwAsG1ufXW6U2X2loam5rYcEDfcifHudLzAsG5dAb178Pd53+DJjNWLVrKpd+7is132JTPHpNp6IlzHU3HmKcoDS8QXLvo3SM0cp/zpYt48s7pdO3Whc0+NYwtd9yszClzrkgG5gPTnCtc33X70LVb+LPr2ccXy3FVwqeucK5w37vsRLYfPYJNth7C0E9knODWuY7FDJq8QHCuYN17dmfssd524KqMNyo755wDMH9CcM45t3qBnCrgBYJzzhWjiia38wLBOeeKYIBVydQV5ZzczjnnOj6LC+Sk2fKQdJWk9yU9lzi2rqQpcV35KW25jLAXCM45VyRrslRbCtcQlglOOhO418y2BO6N+23CCwTnnCtWiZ4QzOxBoOUU/4cC18bX1wKHlTTtCbIqaR1PkvQB8EaeYAOBee2QnHKo1rxVa77A81Yuw8xs/WIikHQnIY9p9ACSq1dNjKs9JuMbDtxuZiPi/kIz6x9fC1jQvF9qVdmonOYDljTVzEa1R3raW7XmrVrzBZ63jszMWlbxtOW9TFKb/Yr3KiPnnKtscyUNBoj/vt9WN/ICwTnnKtt/gGPi62OAW9vqRp25QJiYP0iHVa15q9Z8gefNAZL+ATwKbCXpLUnHA78G9pf0MjAm7rfN/auxUdk551zhOvMTgnPOuQQvEJxzzgFVUiBkGe79RUkzJTVJGpU43lXStZKelfSCpLOyxClJv5D0Ugx3SnvkJUM62iJv+0l6StJ0SQ9J2qI98tIiDYXkq5ukq2O+npE0Okuc7TbEP5c2ytuFkmZJmiHpFkn92zwjmdNR8rwlwp8mySSl7dPvSqwqCgQyD/d+DjgceLDF8S8C3c3sU8BOwDfjQJCWxgMbA580s62B60uY3kJcQ+nz9mfgSDMbCfwdOKeE6U3rGtLn6xsAMV/7A7+VlOlvt92G+OdxDaXP2xRghJltB7wEZCzs28E1lD5vSNoYOAB4s5SJdYWpigIh03BvM3vBzF7MFBzoLakL0BNYCSzOEO5bwHkWV882szbr+5tLG+XNgHXi637AO6VLcToF5msb4L4Y5n1gIZBpoFO7DfHPpS3yZmZ3m1lD3H0MGFrKNKfVRp8bwO+A0wl/m65MqqJAKNCNwEfAu4RfI78xs5ZzhwBsDnxZ0lRJkyVt2Z6JbKW0eTsBuEPSW8DXacNubCXyDHCIpC6SNiU8/WycIdwgM3s3vn4PGNReCSxC2rwlHQdMbvOUFS9V3iQdCrxtZs+0dwLdmqpy6oo8dgYagY2AAcD/JN1jZq+1CNcdWG5moyQdDlwF7Nm+SS1Y2rx9HxhnZo9L+hFwEaGQqFRXAVsDUwlzVD1CyGdWbT3Ev4QKypukCUADMKldUlecvHmT1As4m1Bd5MqsMxYIXwPuNLNVwPuSHiY8xrb80nwLuDm+vgW4uv2S2Gp58yZpfWB7M3s8HroBuLPdU1qAWFXy/eZ9SY8Q6tFbmitpsJm929ZD/EulgLwhaTxwELCfdYABRCnztjmwKfCMJAhVYU9J2tnM3muvtLqgM1YZvQnsCyCpN7ArMCtDuH8D+8TXe5PlP2mFSZO3BUA/SZ+I+/sDL7RbCltBUq+YHyTtDzSY2fMZgrbbEP9SSZs3SWMJdeyHmNnSdk5mq6TJm5k9a2YbmNlwMxtO+CG2oxcGZWJmHX4D/kGoN19F+IM6Hvh8fL0CmAvcFcP2Af4FzASeB36UiOcOYKP4uj/wX+BZwlDy7asob5+P+XoGqAM2q/B8DQdeJBRc9xCmLG6O5wpgVHy9HqF30csx3Lod4DNLm7dXgDnA9LhdVi15axH/bGBgOfLmm/nUFc4554LOWGXknHMuAy8QnHPOAV4gOOeci7xAcM45B3iB4JxzLvICwZWUpPo2jv8OSf3j9u1WXD9a0u0Fhl8k6Y4s56+R9IVC0xGv3VPS88mZQ50rJy8QXIdiZuPMbCFhnEjBBUIr/c/MxpU6UjP7H1DyeJ1rLS8QXJuTNFLSY4m5/AfE43WSLpD0hMK6E3vG470k/TP+er5F0uPN8+xLmh3ny/81sLnCmg4XtvzlL+mSONUDksbGtQSeIkzT3Bymd5zf/wlJT8dJ1vLlRTHuFyXdA2yQOLeTpAckTZN0V5w+A0mfjnlvTqs/EbiK5AWCaw9/Bc6wMJf/s8C5iXNdzGxn4HuJ498GFpjZNsCPCbNktnQm8KqZjTSzH2W7saQewOXAwTGeDROnJwD3xfvvA1zYPNVCDp8HtiJM7Xw08Jl4n67AH4EvmNlOhIndfhGvuRr4poX1J3JOyudcOXmB4NqUpH5AfzN7IB66FtgrEaR5AsFphKkOAPYgLkhkZs8BM4pIwieB183sZQvD8q9LnDsAOFPSdMIUHj2ATfLEtxfwDzNrNLN3iPP9EwqJEcCUGN85wFCFlc36mtmjMdzfi8iLc22qM8526irLivhvI8X9PTaw5g+cHimuEXCEZV7cpVACZprZbmscLNNSl861hj8huDZlZouABc3tA4QFeR7IcQnAw8CXACRtA3wqQ5glQN/E/hvANpK6xy/h/eLxWcBwSZvH/a8mrrkLOFlx3mVJO6TI0oOEhZNqYxtB84y4LwLrS9otxtVV0raxAXyJpF1iuK+kuIdzZeFPCK7UesWV2JpdRJiK+rK4GMprwLF54rgUuFbS84Qv9JnAomQAM/tQ0sOxgXaymf1I0j8J6/u+Djwdwy2XdCLwX0lLgf/xcUFyPvB7YIbCWr+vE9YbyOUWwhTjzxOmG3803mdl7H76h1hN1iXGPZMwI+jlkpoIheGiDPE6V3Y+26mrOJJqga7xy3xzwtTJW5nZyjKkZTTwQzPLV1DkiqOPmdXH12cCg83s1Lg/HLjdzEYUn1rniuNPCK4S9QLujz13BHy7HIVBtBIYIemOIsYiHCjpLML/tzeA8RAGphGehuaVIqHOFcufEJxzzgHeqOyccy7yAsE55xzgBYJzzrnICwTnnHOAFwjOOeei/weZxDSyRQQuQwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(longitude, latitude, c=kedalaman, s=magnitudo) # mengplot titik episenter\n", "plt.xlabel(\"Longitude [deg]\") #menambah label pada sumbu x\n", "plt.ylabel(\"Latitude [deg]\") # menambah label pada sumbu y\n", "plt.title(\"Persebaran Gempa di Mamuju pada \\n\" + \\\n", " \"{} sampai {}\".format(waktu[-1].date(), waktu[0].date())) #keterangan waktu pada judul\n", "plt.grid()\n", "plt.colorbar(label=\"Kedalaman [km]\")" ] }, { "cell_type": "markdown", "id": "changing-crack", "metadata": {}, "source": [ "### Mengubah Ukuran Titik dan Menambahkan Legenda Magnitudo\n", "\n", "Ternyata ukuran magnitudo sangat kecil kita dapat memodifikasi nilai magnitudo dengan dikalikan dengan nilai tertentu menggunakan loop. Looping yang akan kita gunakan merupakan looping yang sama hanya saja ditulis dengan lebih singkat. Angka magnitudo akan dikalikan pangkatkan ke 2,5 untuk memperbesar ukuran plot, kemudian pada argumen `s` di `plt.scatter` kita harus mengganti menjadi `magnitudo_modifikasi`. Modifikasi lain juga harus kita berikan, `plt.scatter` harus kita beri nama seperti `eq` kemudian kita harus menambahkan `*eq.legend_elements(\"sizes\", num=4, func=lambda x: x**(1/2.5))` di bagian `plt.legend`. `num` dapat kita ganti dengan berapa jumlah legenda ukuran titik yang akan ditampilkan, sedangkan `func` berisi fungsi untuk mengembalikan angka magnitudo ke angka sebenarnya (kita bagi 6 (`lambda x: x**(1/2.5)`))." ] }, { "cell_type": "code", "execution_count": 83, "id": "headed-computer", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "[26.333240780428074,\n", " 13.118829216054303,\n", " 10.90017247569964,\n", " 8.923353629661888,\n", " 16.920151004054308,\n", " 32.0,\n", " 8.022682219806539,\n", " 28.148742067808286,\n", " 22.91765149399039,\n", " 22.91765149399039,\n", " 26.333240780428074,\n", " 10.90017247569964,\n", " 21.315586785261154,\n", " 47.889978805591475,\n", " 22.91765149399039,\n", " 28.148742067808286,\n", " 11.978692332637985,\n", " 10.90017247569964,\n", " 38.34168006230295,\n", " 11.978692332637985,\n", " 18.31786887167828,\n", " 21.315586785261154,\n", " 21.315586785261154,\n", " 18.31786887167828,\n", " 18.31786887167828,\n", " 10.90017247569964,\n", " 18.31786887167828,\n", " 22.91765149399039,\n", " 16.920151004054308,\n", " 15.588457268119896,\n", " 30.03734325801801,\n", " 34.037655765343175,\n", " 34.037655765343175,\n", " 95.71482810933738,\n", " 16.920151004054308,\n", " 13.118829216054303,\n", " 14.321713933744102,\n", " 28.148742067808286,\n", " 13.118829216054303,\n", " 53.14840063444996,\n", " 77.56881183826397,\n", " 10.90017247569964]" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [ "magnitudo_modifikasi = [mag**2.5 for mag in magnitudo]\n", "magnitudo_modifikasi" ] }, { "cell_type": "code", "execution_count": 78, "id": "experienced-barcelona", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "eq = plt.scatter(longitude, latitude, c=kedalaman, s=magnitudo_modifikasi, label=\"Episenter\", cmap=\"jet\", alpha=.75) # mengplot titik episenter\n", "plt.xlabel(\"Longitude [deg]\") #menambah label pada sumbu x\n", "plt.ylabel(\"Latitude [deg]\") # menambah label pada sumbu y\n", "plt.title(\"Persebaran Gempa di Mamuju pada \\n\" + \\\n", " \"{} sampai {}\".format(waktu[1].date(), waktu[0].date())) #keterangan waktu pada judul\n", "plt.grid()\n", "plt.colorbar(label=\"Kedalaman [km]\")\n", "plt.legend(*eq.legend_elements(\"sizes\", num=4, func=lambda x: x**(1/2.5)))" ] }, { "cell_type": "markdown", "id": "celtic-modern", "metadata": {}, "source": [ "Fungsi dan kode pada contoh di bawah ini terlihat lebih kompleks, tetapi kita sebenarnya hanya perlu berkonsentrasi pada:\n", "\n", "```python\n", "ax.set_extent([118.5, 119.2, -3.25, -2.65])\n", "```\n", "\n", "yang menjelaskan batas plot dalam derajat.\n", "\n", "\n", "```python\n", "eq = ax.scatter(longitude, latitude, zorder=12, s=magnitudo_modifikasi, c=kedalaman\\\n", " ,cmap=\"jet\", alpha=.6)\n", "\n", "fig.colorbar(eq, label=\"Kedalaman [km]\")\n", "\n", "plt.title(\"Persebaran Gempa di Mamuju pada \\n\" + \\\n", " \"{} sampai {}\".format(waktu[1].date(), waktu[0].date())) #keterangan waktu pada judul\n", "```\n", "\n", "menjelaskan plot dari data katalog kita, dan\n", "\n", "```python\n", "plt.legend(title=\"Magnitude\", loc=\"lower left\", \\\n", " *eq.legend_elements(\"sizes\", num=4, func=lambda x: x**(1/2.5))).set_zorder(102)\n", "plt.savefig(\"output/gempa_dem.png\", dpi=300)\n", "```\n", "\n", "judul plot dan lokasi penyimpanan output.\n" ] }, { "cell_type": "code", "execution_count": 86, "id": "secondary-question", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import cartopy.crs as ccrs\n", "from cartopy.io import srtm\n", "import matplotlib.pyplot as plt\n", "import cartopy.io.img_tiles as cimgt\n", "import cartopy.feature as cfeature\n", "\n", "\n", "fig = plt.figure()\n", "ax = plt.axes(projection=ccrs.PlateCarree())\n", "\n", "\n", "# Add stamen background\n", "stamen_terrain = cimgt.Stamen('terrain-background') ##maps.stamen.com\n", "ax.add_image(stamen_terrain,10)\n", "\n", "\n", "# This data is high resolution, so pick a small area which has some\n", "# interesting orography.\n", "ax.set_extent([118.5, 119.2, -3.25, -2.65])\n", "ax.set_xlabel(\"Longitude [deg]\")\n", "ax.set_ylabel(\"Latitude [deg]\")\n", "\n", "#add eq\n", "eq = ax.scatter(longitude, latitude, zorder=12, s=magnitudo_modifikasi, c=kedalaman\\\n", " ,cmap=\"jet\", alpha=.6)\n", "\n", "fig.colorbar(eq, label=\"Kedalaman [km]\")\n", "\n", "plt.title(\"Persebaran Gempa di Mamuju pada \\n\" + \\\n", " \"{} sampai {}\".format(waktu[-1].date(), waktu[0].date())) #keterangan waktu pada judul\n", "\n", "gl = ax.gridlines(draw_labels=True, dms=False, x_inline=False, y_inline=False, zorder=11)\n", "\n", "gl.xlabels_top = False\n", "gl.ylabels_right = False\n", "\n", "plt.legend(title=\"Magnitude\", loc=\"lower left\", \\\n", " *eq.legend_elements(\"sizes\", num=4, func=lambda x: x**(1/2.5))).set_zorder(102)\n", "plt.savefig(\"output/gempa_peta.png\", dpi=300)" ] }, { "cell_type": "code", "execution_count": null, "id": "commercial-interim", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.5" } }, "nbformat": 4, "nbformat_minor": 5 }