Repositori untuk menyimpan material Long Course STMKGxHMGI tentang Geophysical Python for Seismic Data Analysis

Overview

header_image

Long Course

"Geophysical Python for Seismic Data Analysis"

Instruktur: Dr.rer.nat. Wiwit Suryanto, M.Si

Dipersiapkan oleh: Anang Sahroni

Waktu:

Sesi 1: 18 September 2021

Sesi 2: 25 September 2021

Tempat: Zoom Meeting

Agenda: Memberikan wawasan kepada mahasiswa Geofisika dalam pengolahan data Geofisika: pemrosesan data seismik menggunakan python.

Luaran

  1. Peserta dapat melakukan instalasi Python
  2. Peserta dapat membuat dan menggunakan Jupyter Notebook
  3. Peserta dapat membaca, memfilter, dan mengeplot peta dan statistik gempa bumi menggunakan modul umum Python seperti numpy, scipy, dan matplotlib
  4. Peserta dapat menentukan parameter gempa menggunakan metode yang sederhana pada Python memanfaatkan modul seismologi seperti obspy

Peralatan untuk peserta

Laptop ataupun Personal Computer (PC) yang terkoneksi dengan internet.
Jika hendak menjalankan kode tanpa instalasi bisa melalui: Binder

Data:

  1. Katalog Gempa Bumi Badan Meteorologi Klimatologi dan Geofisika (BMKG)
  2. Titik-titik Stasiun untuk berbagai jaringan seismometer

Jadwal

Topik
PRESESI: 17 September 2021
Instalasi Python dalam Miniconda atau PDF
1. Instalasi Miniconda pada Windows, Linux, ataupun MacOS
2. Menjalankan Python Console melalui Anaconda Prompt
3. Menulis kode dalam editor (Integrated Development Environment/IDE) kode dan menjalankannya melalui Anaconda Prompt
4. Pengenalan IDE dan beberapa contohnya
5. Menginstall pandas, numpy, matplotlib, scipy, Cartopy, dan notebook menggunakan Anaconda Prompt pada virtual environment
6. Menjalankan kode sederhana di Jupyter Notebook
7. Memanggil fungsi bawaan python (math), mencoba, dan memanggil bantuan (help) untuk masing-masing fungsi
8. Memberikan catatan dan gambar dalam bentuk Markdown di Jupyter Notebook
9. Menyimpan notebook pada repositori Github dan menambahkan ke Binder
10. Mengupdate notebook dan melakukan commit ke repositori
EXERCISE: Membuat panduan instalasi Miniconda pada Jupyter Notebook dan menambahkannya di repositori Github individu.
SESI 1: 18 September 2021
Introduction to geophysical programming using python: basic python for seismology Materi 1 (PDF/Open In Colab) dan Materi 2 (PDF/Open In Colab) atau Binder
1. Membaca data katalog menggunakan pandas
2. Membedakan jenis-jenis data antar kolom pada katalog (String, Integer, dan Float)
3. Mengambil salah satu kolom ke dalam bentuk List dan mempelajari metode-metode pada List (indexing, slicing, append, dan lain sebagainya)
4. Menggunakan for loop untuk mengkonversi format String menjadi datetime untuk waktu kejadian
5. Menggunakan conditional untuk memfilter katalog berdasarkan besar magnitudo atau waktu
6. Membuat fungsi untuk memfilter katalog berdasarkan kedalaman dan menyimpannya menjadi modul siap impor
7. Membuat plot magnitudo dengan jumlah kejadian dan waktu kejadian (dapat berupa G-R Plot atau plot sederhana)
8. Mengkombinasikan List latitude dan longitude untuk mengeplot episenter
9. Mengintegrasikan kolom magnitude untuk membedakan ukuran titik titik plot
10. Mengintegrasikan kolom kedalaman untuk membedakan warna titik plot
11. Menambahkan basemap pada plot Menggunakan Cartopy
EXERCISE: Membaca file titik stasiun, memfilter berdasarkan network, dan mengeplotnya bersama dengan titik-titik gempa.
SESI 2: 25 September 2021
Source Mechanism and processing seismic data with python : Determine earthquake epicenter, hypocenter, and type of P Wave
Jika menggunakan komputer lokal silahkan install modul yang dibutuhkan pada sesi dua dengan cara: conda install -c conda-forge xarray rasterio tqdm
1. Menentukan episenter dengan metode lingkaran Materi
2. Menentukan hiposenter dengan metode Geiger dan probabilistik Materi 1, Materi 2
3. Pengenalan pengolahan waveform dengan obspy Materi

Software untuk diinstall

  1. Miniconda. Instalasi Python akan dilakukan menggunakan Anaconda Distribution dalam bentuk lite yaitu Miniconda. Dengan Miniconda instalasi paket atau modul pendukung untuk Python akan lebih mudah dan tertata. Unduh installer Miniconda, pilih untuk versi Python 3.8.
  2. Editor teks agar penulisan kode lebih mudah karena biasanya sudah disertai pewarnaan kode (syntax highlighting) dan indentasi otomatis. Editor teks dapat menggunakan Notepad++, SublimeText, atau menggunakan IDE yang lebih kompleks seperti PyCharm dan Visual Studio Code.

Software-software yang dibutuhkan tersebut sudah harus diinstall sebelum proses pemberian materi dimulai karena ukurannya cukup besar.

Akun Github

Peserta workshop dianjurkan mendaftarkan akun GitHub melalui Daftar Github

Bacaan Tambahan:

Peserta dapat belajar pada Lesson di Software Carpentry dengan materi yang mendalam dan metode yang sama yaitu learning by doing.

Referensi

Panduan ini disusun terinspirasi dari materi pada Software Carpentry, materi inversi hiposenter probabilistik Igel & Geßele di Seismo Live,panduan workshop Leonardo Uieda pada repositori, serta Lisa Itauxe Python for ES Student berikut ini.

You might also like...
Tablexplore is an application for data analysis and plotting built in Python using the PySide2/Qt toolkit.
Tablexplore is an application for data analysis and plotting built in Python using the PySide2/Qt toolkit.

Tablexplore is an application for data analysis and plotting built in Python using the PySide2/Qt toolkit.

 A data analysis using python and pandas to showcase trends in school performance.
A data analysis using python and pandas to showcase trends in school performance.

A data analysis using python and pandas to showcase trends in school performance. A data analysis to showcase trends in school performance using Panda

A collection of learning outcomes data analysis using Python and SQL, from DQLab.
A collection of learning outcomes data analysis using Python and SQL, from DQLab.

Data Analyst with PYTHON Data Analyst berperan dalam menghasilkan analisa data serta mempresentasikan insight untuk membantu proses pengambilan keputu

DaDRA (day-druh) is a Python library for Data-Driven Reachability Analysis.
DaDRA (day-druh) is a Python library for Data-Driven Reachability Analysis.

DaDRA (day-druh) is a Python library for Data-Driven Reachability Analysis. The main goal of the package is to accelerate the process of computing estimates of forward reachable sets for nonlinear dynamical systems.

Python-based Space Physics Environment Data Analysis Software

pySPEDAS pySPEDAS is an implementation of the SPEDAS framework for Python. The Space Physics Environment Data Analysis Software (SPEDAS) framework is

Python Project on Pro Data Analysis Track

Udacity-BikeShare-Project: Python Project on Pro Data Analysis Track Basic Data Exploration with pandas on Bikeshare Data Basic Udacity project using

Sentiment analysis on streaming twitter data using Spark Structured Streaming & Python
Sentiment analysis on streaming twitter data using Spark Structured Streaming & Python

Sentiment analysis on streaming twitter data using Spark Structured Streaming & Python This project is a good starting point for those who have little

 Project under the certification
Project under the certification "Data Analysis with Python" on FreeCodeCamp

Sea Level Predictor Assignment You will anaylize a dataset of the global average sea level change since 1880. You will use the data to predict the sea

Larch: Applications and Python Library for Data Analysis of X-ray Absorption Spectroscopy (XAS, XANES, XAFS, EXAFS), X-ray Fluorescence (XRF) Spectroscopy and Imaging

Larch: Data Analysis Tools for X-ray Spectroscopy and More Documentation: http://xraypy.github.io/xraylarch Code: http://github.com/xraypy/xraylarch L

Releases(v1.0.0)
Owner
Anang Sahroni
newbie/amateur
Anang Sahroni
SparseLasso: Sparse Solutions for the Lasso

SparseLasso: Sparse Solutions for the Lasso Introduction SparseLasso provides a Scikit-Learn based estimation of the Lasso with cross-validation tunin

Gabriel Okasa 1 Nov 08, 2021
Get mutations in cluster by querying from LAPIS API

Cluster Mutation Script Get mutations appearing within user-defined clusters. Usage Clusters are defined in the clusters dict in main.py: clusters = {

neherlab 1 Oct 22, 2021
BigDL - Evaluate the performance of BigDL (Distributed Deep Learning on Apache Spark) in big data analysis problems

Evaluate the performance of BigDL (Distributed Deep Learning on Apache Spark) in big data analysis problems.

Vo Cong Thanh 1 Jan 06, 2022
small package with utility functions for analyzing (fly) calcium imaging data

fly2p Tools for analyzing two-photon (2p) imaging data collected with Vidrio Scanimage software and micromanger. Loading scanimage data relies on scan

Hannah Haberkern 3 Dec 14, 2022
Making the DAEN information accessible.

The purpose of this repository is to make the information on Australian COVID-19 adverse events accessible. The Therapeutics Goods Administration (TGA) keeps a database of adverse reactions to medica

10 May 10, 2022
Wafer Fault Detection - Wafer circleci with python

Wafer Fault Detection Problem Statement: Wafer (In electronics), also called a slice or substrate, is a thin slice of semiconductor, such as a crystal

Avnish Yadav 14 Nov 21, 2022
Elementary is an open-source data reliability framework for modern data teams. The first module of the framework is data lineage.

Data lineage made simple, reliable, and automated. Effortlessly track the flow of data, understand dependencies and analyze impact. Features Visualiza

898 Jan 09, 2023
Pandas on AWS - Easy integration with Athena, Glue, Redshift, Timestream, QuickSight, Chime, CloudWatchLogs, DynamoDB, EMR, SecretManager, PostgreSQL, MySQL, SQLServer and S3 (Parquet, CSV, JSON and EXCEL).

AWS Data Wrangler Pandas on AWS Easy integration with Athena, Glue, Redshift, Timestream, QuickSight, Chime, CloudWatchLogs, DynamoDB, EMR, SecretMana

Amazon Web Services - Labs 3.3k Jan 04, 2023
ToeholdTools is a Python package and desktop app designed to facilitate analyzing and designing toehold switches, created as part of the 2021 iGEM competition.

ToeholdTools Category Status Repository Package Build Quality A library for the analysis of toehold switch riboregulators created by the iGEM team Cit

0 Dec 01, 2021
Python package to transfer data in a fast, reliable, and packetized form.

pySerialTransfer Python package to transfer data in a fast, reliable, and packetized form.

PB2 101 Dec 07, 2022
Monitor the stability of a pandas or spark dataframe ⚙︎

Population Shift Monitoring popmon is a package that allows one to check the stability of a dataset. popmon works with both pandas and spark datasets.

ING Bank 403 Dec 07, 2022
EOD Historical Data Python Library (Unofficial)

EOD Historical Data Python Library (Unofficial) https://eodhistoricaldata.com Installation python3 -m pip install eodhistoricaldata Note Demo API key

Michael Whittle 20 Dec 22, 2022
A simple and efficient tool to parallelize Pandas operations on all available CPUs

Pandaral·lel Without parallelization With parallelization Installation $ pip install pandarallel [--upgrade] [--user] Requirements On Windows, Pandara

Manu NALEPA 2.8k Dec 31, 2022
Port of dplyr and other related R packages in python, using pipda.

Unlike other similar packages in python that just mimic the piping syntax, datar follows the API designs from the original packages as much as possible, and is tested thoroughly with the cases from t

179 Dec 21, 2022
Spaghetti: an open-source Python library for the analysis of network-based spatial data

pysal/spaghetti SPAtial GrapHs: nETworks, Topology, & Inference Spaghetti is an open-source Python library for the analysis of network-based spatial d

Python Spatial Analysis Library 203 Jan 03, 2023
A CLI tool to reduce the friction between data scientists by reducing git conflicts removing notebook metadata and gracefully resolving git conflicts.

databooks is a package for reducing the friction data scientists while using Jupyter notebooks, by reducing the number of git conflicts between different notebooks and assisting in the resolution of

dataroots 86 Dec 25, 2022
Exploring the Top ML and DL GitHub Repositories

This repository contains my work related to my project where I scraped data on the most popular machine learning and deep learning GitHub repositories in order to further visualize and analyze it.

Nico Van den Hooff 17 Aug 21, 2022
A 2-dimensional physics engine written in Cairo

A 2-dimensional physics engine written in Cairo

Topology 38 Nov 16, 2022
Generate lookml for views from dbt models

dbt2looker Use dbt2looker to generate Looker view files automatically from dbt models. Features Column descriptions synced to looker Dimension for eac

lightdash 126 Dec 28, 2022
PySpark Structured Streaming ROS Kafka ApacheSpark Cassandra

PySpark-Structured-Streaming-ROS-Kafka-ApacheSpark-Cassandra The purpose of this project is to demonstrate a structured streaming pipeline with Apache

Zekeriyya Demirci 5 Nov 13, 2022