0% menganggap dokumen ini bermanfaat (0 suara)
8 tayangan

Modul Analisis Data (TM2)

Diunggah oleh

bambangbudi.gap
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
8 tayangan

Modul Analisis Data (TM2)

Diunggah oleh

bambangbudi.gap
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 13

1

MODUL PERKULIAHAN

W542100001
– Analisis
Data
Sekilas Analisis Data
dengan Python

Abstrak Sub-CPMK

Contoh Pemrosesan dan Sub-CPMK 2


Penyajian Data. Library Contoh Analisis Data menggunakan
pandas, seaborn, matplotlib. Library pada Python.
Sarana Analisis Data
Modul Kuliah kali ini berisi contoh penggunaan bahasa Python untuk Analisis Data.
Sarana yang digunakan berupa Software, yaitu Jupyter Notebook, dapat dijalankan pada
platform OS Windows, Linux, maupun Mac.

Berikut ini adalah 5 langkah yang diperlukan, yaitu :

1. Download dan Install Ancaonda dari link berikut ini,


https://repo.anaconda.com/archive/

sesuaikan dengan OS anda, misalnya untuk pengguna Windows, pilih file

Anaconda3-5.2.0-Windows-x86_64.exe

2. Tambahkan Path Anaconda3 dan Anaconda3\Scripts pada Environment


Variable, silakan lihat link berikut ini beserta contoh gambarnya,
https://www.architectryan.com/2018/03/17/add-to-the-path-on-windows-10/

3. Dengan menggunakan Windows Command Prompt atau Windows Power Cell,


Tulis dan Enter : pip install seaborn

4. Tulis dan Enter : pip install pandas-profiling


5. Tulis dan Enter : pip install plotly

202 Analisis Data


1 2 Eko Ihsanto, Dr, Ir, M.Eng
Biro Bahan Ajar E-learning dan MKCU
http://pbael.mercubuana.ac.id/
Peran Analis Data
Seorang analis data menggunakan alat pemrograman untuk menambang sejumlah
besar data kompleks, dan menemukan informasi yang relevan dari data ini. Singkatnya,
seorang analis adalah seseorang yang memperoleh makna dari data yang berantakan.
Seorang analis data perlu memiliki keterampilan di bidang-bidang berikut, agar berguna di
tempat kerja:
 Keahlian Domain — Untuk menambang data dan menghasilkan wawasan
yang relevan dengan tempat kerja mereka, seorang analis harus memiliki
keahlian domain.
 Keterampilan Pemrograman —Sebagai seorang analis data, Anda perlu
mengetahui perpustakaan yang tepat untuk digunakan untuk membersihkan
data, menambang, dan mendapatkan wawasan darinya.
 Statistik — Seorang analis mungkin perlu menggunakan beberapa alat
statistik untuk mendapatkan makna dari data.
 Keterampilan Visualisasi — Seorang analis data harus memiliki
keterampilan visualisasi data yang hebat, untuk meringkas dan menyajikan
data kepada pihak ketiga.
 Bercerita — Akhirnya, seorang analis perlu mengomunikasikan temuan
mereka kepada pemangku kepentingan atau klien. Ini berarti bahwa mereka
perlu membuat cerita data, dan memiliki kemampuan untuk
menceritakannya.
Pada modul ini, akan dipaparkan contoh proses analisis data menggunakan Python.
Jika Anda mengikuti tutorial ini dan mengkodekan semuanya seperti yang saya lakukan,
Anda kemudian dapat menggunakan kode dan alat ini untuk proyek analitik data di masa
mendatang. Kami akan mulai dengan mengunduh dan membersihkan kumpulan data, dan
kemudian beralih ke analisis dan visualisasi. Terakhir, kami akan menceritakan kisah
seputar temuan data kami. Saya akan menggunakan dataset dari Kaggle yang disebut
Pima Indian Diabetes database, filenya dapat didownload, tetapi juga dilampirkan pada
POST pekan ini.
Seperti telah ditulis di bagian awal Modul ini, seluruh analisis ini akan menggunakan
sarana berupa Jupyter Notebook. Anda dapat menggunakan IDE Python apa pun yang
Anda suka.
Anda perlu menginstal pustaka (library) tertentu, yaitu seaborn, pandas-profiling
dan plotly.

202 Analisis Data


1 3 Eko Ihsanto, Dr, Ir, M.Eng
Biro Bahan Ajar E-learning dan MKCU
http://pbael.mercubuana.ac.id/
Proses Analisis Data

Gambar 2.1. Contoh Tampilan Data

Setelah mengunduh kumpulan data, Anda perlu membaca file .csv sebagai bingkai
data dengan Python. Anda dapat melakukan ini menggunakan perpustakaan Pandas. Jika
Anda belum menginstalnya, Anda dapat melakukannya dengan pip install pandas di
Command Prompt atau Power Shell. Jika Anda menghadapi kesulitan dalam penginstalan
atau hanya ingin mempelajari lebih lanjut tentang perpustakaan Pandas, Anda dapat
melihat dokumentasi tentang pandas di tautan ini.

Pembacaan Data dari Disk


Untuk membaca bingkai data ke Python, Anda harus mengimpor Pandas terlebih
dahulu. Kemudian, Anda dapat membaca file dan membuat bingkai data dengan baris
kode berikut:
import pandas as pd

df = pd.read_csv('diabetes.csv')

Untuk memeriksa kepala bingkai data, tulis dan jalankan:

df.head()

202 Analisis Data


1 4 Eko Ihsanto, Dr, Ir, M.Eng
Biro Bahan Ajar E-learning dan MKCU
http://pbael.mercubuana.ac.id/
Dari tampilan tabel di atas, dapat dilihat 9 kolom atau variabel berbeda yang terkait
dengan kesehatan pasien. Sebagai seorang analis, Anda harus memiliki pemahaman
dasar tentang variabel-variabel ini:
 Kehamilan : Jumlah kehamilan yang dialami pasien
 Glukosa : Kadar glukosa pasien
 Tekanan darah
 Ketebalan Kulit : Ketebalan kulit pasien dalam mm
 Insulin : Kadar insulin pasien
 BMI : Indeks Massa Tubuh pasien
 Silsilah Diabetes : Riwayat penyakit diabetes mellitus pada kerabat
 Usia
 Outcome atau Hasil : Apakah pasien menderita diabetes atau tidak
Sebagai seorang analis, Anda perlu mengetahui perbedaan antara tipe variabel ini —
Numerik dan Kategoris.
Variabel numerik adalah variabel yang merupakan ukuran, dan memiliki semacam makna
numerik. Semua variabel dalam dataset ini kecuali untuk “ hasil ” adalah numerik.
Variabel kategori disebut juga variabel nominal, dan memiliki dua atau lebih kategori yang
dapat diklasifikasikan.
Variabel " hasil " adalah kategorikal - 0 mewakili tidak adanya diabetes, dan 1 mewakili
adanya diabetes.
Catatan Singkat
Sebelum melanjutkan dengan analisis, saya ingin membuat catatan singkat:
Analis adalah manusia, dan kita sering datang dengan prasangka tentang apa yang kita
harapkan untuk dilihat dalam data. Misalnya, Anda mengharapkan orang yang lebih tua
lebih mungkin menderita diabetes. Anda ingin melihat korelasi ini dalam data, yang
mungkin tidak selalu demikian. Tetap berpikiran terbuka selama proses analisis, dan
jangan biarkan bias Anda memengaruhi pengambilan keputusan.
Profil Panda
Ini adalah alat yang sangat berguna yang dapat digunakan oleh para analis. Ini
menghasilkan laporan analisis pada kerangka data, dan membantu Anda lebih memahami
korelasi antar variabel. Untuk membuat laporan Profil Pandas, jalankan baris kode berikut:
import pandas_profiling as pp

pp.ProfileReport(df)

Laporan ini akan memberi Anda beberapa informasi statistik keseluruhan pada kumpulan
data, yang terlihat seperti ini:

202 Analisis Data


1 5 Eko Ihsanto, Dr, Ir, M.Eng
Biro Bahan Ajar E-learning dan MKCU
http://pbael.mercubuana.ac.id/
Dengan hanya melirik statistik dataset, kita dapat melihat bahwa tidak ada sel yang
hilang atau duplikat dalam bingkai data kita. Informasi yang diberikan di atas biasanya
mengharuskan kita menjalankan beberapa baris kode untuk menemukannya, tetapi
dihasilkan jauh lebih mudah dengan Pandas Profiling. Pandas-Profiling juga memberikan
lebih banyak informasi tentang setiap variabel. Saya akan menunjukkan kepada Anda
sebuah contoh:

Ini adalah informasi yang dihasilkan untuk variabel yang disebut " Kehamilan."
Sebagai seorang analis, laporan ini menghemat banyak waktu , karena kita tidak harus
melalui setiap variabel individu dan menjalankan terlalu banyak baris kode.
Dari sini, kita dapat melihat bahwa:
 Variabel " Kehamilan" memiliki 17 nilai yang berbeda.
 Jumlah kehamilan minimum yang dimiliki seseorang adalah 0, dan
maksimum adalah 17.

202 Analisis Data


1 6 Eko Ihsanto, Dr, Ir, M.Eng
Biro Bahan Ajar E-learning dan MKCU
http://pbael.mercubuana.ac.id/
 Jumlah nilai nol di kolom ini cukup rendah (hanya 14,5%). Ini berarti bahwa
di atas 80% pasien dalam dataset sedang hamil .
Dalam laporan, ada informasi seperti ini yang disediakan untuk setiap variabel. Ini sangat
membantu kami dalam memahami kumpulan data dan semua kolom di dalamnya.

Plot di atas adalah matriks korelasi. Ini membantu kita mendapatkan pemahaman
yang lebih baik tentang korelasi antara variabel dalam dataset . Ada sedikit korelasi
positif antara variabel “ Usia ” dan “ Ketebalan Kulit ”, yang dapat dilihat lebih lanjut di
bagian visualisasi analisis. Karena tidak ada baris yang hilang atau duplikat dalam
bingkai data seperti yang terlihat di atas, kita tidak perlu melakukan pembersihan data
tambahan.

Visualisasi data
Sekarang setelah kita memiliki pemahaman dasar tentang setiap variabel, kita dapat
mencoba menemukan hubungan di antara mereka. Cara termudah dan tercepat untuk
melakukannya adalah dengan menghasilkan visualisasi.
Dalam modul ini, akan digunakan tiga library untuk menyelesaikan pekerjaan, yaitu
Matplotlib, Seaborn, dan Plotly. Jika Anda benar-benar pemula untuk Python, saya
sarankan untuk memulai dan membiasakan diri dengan Matplotlib dan Seaborn.
Berikut adalah dokumentasi untuk Matplotlib, dan di sini adalah satu untuk Seaborn.
Saya sangat menyarankan untuk meluangkan waktu membaca dokumentasi, dan

202 Analisis Data


1 7 Eko Ihsanto, Dr, Ir, M.Eng
Biro Bahan Ajar E-learning dan MKCU
http://pbael.mercubuana.ac.id/
melakukan tutorial menggunakan dua perpustakaan ini untuk meningkatkan keterampilan
visualisasi Anda.
Plotly adalah library atau pustaka yang memungkinkan Anda membuat bagan
interaktif, dan membutuhkan sedikit lebih banyak keakraban dengan Python untuk
dikuasai. Anda dapat menemukan panduan dan persyaratan instalasi di sini .
Jika Anda mengikuti tuntunan ini dengan tepat, Anda akan dapat membuat grafik
yang indah dengan ketiga perpustakaan ini. Anda kemudian dapat menggunakan kode
saya sebagai template untuk tugas analisis atau visualisasi di masa mendatang.

Visualisasi Variabel Hasil


Pertama, jalankan baris kode berikut untuk mengimpor Matplotlib, Seaborn, Numpy,
dan Plotly setelah instalasi:
# Visualization Imports
import matplotlib.pyplot as plt
import seaborn as sns
color = sns.color_palette()
get_ipython().run_line_magic('matplotlib', 'inline')
import plotly.offline as py
py.init_notebook_mode(connected=True)
import plotly.graph_objs as go
import plotly.tools as tls
import plotly.express as px
import numpy as np
Selanjutnya, jalankan baris kode berikut untuk membuat diagram lingkaran yang
memvisualisasikan variabel hasil:
dist = df['Outcome'].value_counts()
colors = ['mediumturquoise', 'darkorange']
trace = go.Pie(values=(np.array(dist)),labels=dist.index)
layout = go.Layout(title='Diabetes Outcome')
data = [trace]
fig = go.Figure(trace,layout)
fig.update_traces(marker=dict(colors=colors,
line=dict(color='#000000', width=2)))
fig.show()

Ini dilakukan dengan perpustakaan Plotly, dan Anda akan mendapatkan bagan interaktif
yang terlihat seperti ini:

202 Analisis Data


1 8 Eko Ihsanto, Dr, Ir, M.Eng
Biro Bahan Ajar E-learning dan MKCU
http://pbael.mercubuana.ac.id/
Anda dapat variasikan grafik tsb dan memilih untuk mengubah warna, label, dan legenda.
Namun, dari grafik di atas, kita dapat melihat bahwa sebagian besar pasien dalam
kumpulan data tidak menderita diabetes. Kurang dari setengah dari mereka memiliki hasil
1 (memiliki diabetes).

Matriks Korelasi dengan Plotly


Mirip dengan matriks korelasi yang dihasilkan di Pandas Profiling, kita dapat membuatnya
menggunakan Plotly:

def df_to_plotly(df):
return {'z': df.values.tolist(),
'x': df.columns.tolist(),
'y': df.index.tolist() }
import plotly.graph_objects as go
dfNew = df.corr()
fig = go.Figure(data=go.Heatmap(df_to_plotly(dfNew)))
fig.show()

Kode-kode di atas akan menghasilkan matriks korelasi yang mirip dengan yang di atas:

202 Analisis Data


1 9 Eko Ihsanto, Dr, Ir, M.Eng
Biro Bahan Ajar E-learning dan MKCU
http://pbael.mercubuana.ac.id/
Sekali lagi, mirip dengan matriks yang dihasilkan di atas, korelasi positif dapat diamati
antara variabel:
 Usia dan Kehamilan
 Glukosa dan Hasil
 Ketebalan Kulit dan Insulin
Untuk lebih memahami korelasi antar variabel, kami akan membuat beberapa plot:

Visualisasi Kadar Glukosa dan Insulin


fig = px.scatter(df, x='Glucose', y='Insulin')
fig.update_traces(marker_color="turquoise",marker_line_color='rgb(
8,48,107)',
marker_line_width=1.5)
fig.update_layout(title_text='Glucose and Insulin')
fig.show()

Menjalankan kode di atas akan memberi Anda plot yang terlihat seperti berikut ini:

202
1 1 Analisis Data
Biro Bahan Ajar E-learning dan MKCU

0 Eko Ihsanto, Dr, Ir, M.Eng http://pbael.mercubuana.ac.id/


Ada korelasi positif antara variabel glukosa dan insulin. Ini masuk akal, karena seseorang
dengan kadar glukosa yang lebih tinggi diharapkan untuk mengambil lebih banyak insulin.

Visualisasi Hasil dan Usia


Sekarang, kita akan memvisualisasikan variabel hasil dan usia. Kami akan membuat
boxplot untuk melakukannya, menggunakan kode di bawah ini:
fig = px.box(df, x='Outcome', y='Age')
fig.update_traces(marker_color="midnightblue",marker_line_color='r
gb(8,48,107)',
marker_line_width=1.5)
fig.update_layout(title_text='Age and Outcome')
fig.show()

Plot yang dihasilkan akan terlihat seperti ini:

202
1 1 Analisis Data
Biro Bahan Ajar E-learning dan MKCU

1 Eko Ihsanto, Dr, Ir, M.Eng http://pbael.mercubuana.ac.id/


Dari plot di atas, dapat dilihat bahwa orang yang lebih tua lebih mungkin menderita
diabetes. Usia rata-rata untuk orang dewasa dengan diabetes adalah sekitar 35,
sementara itu jauh lebih rendah untuk orang tanpa diabetes. Namun, ada banyak outlier.
Ada beberapa orang lanjut usia tanpa diabetes (bahkan ada yang berusia di atas 80
tahun), yang dapat diamati dalam boxplot.

Visualisasi BMI dan Hasil


Terakhir, kita akan memvisualisasikan variabel “ BMI ” dan “ Outcome ”, untuk
melihat apakah ada korelasi antara kedua variabel tersebut. Untuk melakukan ini, kita
akan menggunakan perpustakaan Seaborn:
plot = sns.boxplot(x='Outcome',y="BMI",data=df)

202
1 1 Analisis Data
Biro Bahan Ajar E-learning dan MKCU

2 Eko Ihsanto, Dr, Ir, M.Eng http://pbael.mercubuana.ac.id/


Boxplot yang dibuat di sini mirip dengan yang dibuat di atas menggunakan Plotly.
Namun, Plotly lebih baik dalam membuat visualisasi yang interaktif, dan grafiknya terlihat
lebih cantik dibandingkan dengan yang dibuat di Seaborn. Dari plot kotak di atas, kita
dapat melihat bahwa BMI yang lebih tinggi berkorelasi dengan hasil yang positif. Orang
dengan diabetes cenderung memiliki BMI lebih tinggi daripada orang tanpa diabetes. Anda
dapat membuat lebih banyak visualisasi seperti di atas, hanya dengan mengubah nama
variabel dan menjalankan baris kode yang sama. Saya akan meninggalkan itu sebagai
latihan untuk Anda lakukan, untuk mendapatkan pemahaman yang lebih baik tentang
keterampilan visualisasi Anda dengan Python.

Cerita tentang Data


Akhirnya, kita dapat menceritakan sebuah cerita seputar data yang telah kita analisis
dan visualisasikan. Temuan kami dapat dipecah sebagai berikut:
Orang dengan diabetes sangat mungkin lebih tua daripada orang yang tidak. Mereka
juga lebih mungkin memiliki BMI yang lebih tinggi, atau menderita obesitas. Mereka juga
lebih cenderung memiliki kadar glukosa yang lebih tinggi dalam darah mereka. Orang
dengan kadar glukosa yang lebih tinggi juga cenderung menggunakan lebih banyak
insulin, dan korelasi positif ini menunjukkan bahwa pasien dengan diabetes juga dapat
memiliki kadar insulin yang lebih tinggi.

Daftar Pustaka
https://towardsdatascience.com/a-beginners-guide-to-data-analysis-in-python-
188706df5447

202
1 1 Analisis Data
Biro Bahan Ajar E-learning dan MKCU

3 Eko Ihsanto, Dr, Ir, M.Eng http://pbael.mercubuana.ac.id/

Anda mungkin juga menyukai