Thursday, 7 May 2020

Manipulasi - Pengantar SQL

Pengantar SQL

SQL, Structured Query Language, adalah bahasa pemrograman yang dirancang untuk mengelola data yang disimpan dalam database relasional. SQL beroperasi melalui pernyataan deklaratif yang sederhana. Ini menjaga data akurat dan aman, dan membantu menjaga integritas basis data, terlepas dari ukurannya.

Bahasa SQL banyak digunakan saat ini di seluruh kerangka kerja web dan aplikasi database. Mengetahui SQL memberi Anda kebebasan untuk mengeksplorasi data Anda, dan kekuatan untuk membuat keputusan yang lebih baik. Dengan mempelajari SQL, Anda juga akan mempelajari konsep yang berlaku untuk hampir setiap sistem penyimpanan data.

Pernyataan yang tercakup dalam kursus ini menggunakan SQLite Relational Database Management System (RDBMS). Anda juga dapat mengakses glosarium dari semua perintah SQL yang diajarkan dalam kursus ini.

Instruksi
1. Mari kita mulai dengan memasukkan perintah SQL.

Di editor kode, ketik:

SELECT * FROM celebs;

Anda akan menjalankan semua perintah SQL dalam kursus ini dengan menekan tombol Run di bagian bawah editor kode.

Tekan Jalankan.

Hasilnya :

Query Results

id name age
1 Justin Bieber 22
2 Beyonce Knowles 33
3 Jeremy Lin 26
4 Taylor Swift 26

Database Schema

celebs4 rows
idINTEGER
nameTEXT
ageINTEGER

Labels:

Mengapa Ilmu Data - Memvisualisasikan Data dengan Matplotlib dan Seaborn

Memvisualisasikan Data dengan Matplotlib dan Seaborn

Catherine ingin memvisualisasikan analisisnya dan membagikannya kepada bosnya. Untuk ini, dia akan menggunakan Matplotlib, modul Python lain.

Matplotlib memungkinkan Catherine membuat diagram garis, diagram batang, diagram lingkaran, dan banyak lagi. Ini memberinya kontrol yang tepat atas warna dan label sehingga ia dapat membuat bagan yang sempurna untuk mengomunikasikan temuannya.

Catherine telah menulis beberapa kode menggunakan Matplotlib yang memvisualisasikan jam penggunaan di Codecademy!


Instruksi
1. Catherine telah menulis beberapa kode di script.py, tetapi tidak akan menampilkan grafik barunya sampai Anda menambahkan kode berikut ke bagian paling akhir file:


plt.show()

Ini memberi tahu Matplotlib untuk membuat dan menampilkan plot!


 Query :

import codecademylib3_seaborn
from matplotlib import pyplot as plt
import numpy as np
import pandas as pd

hour = range(24)

viewers_hour = [30, 17, 34, 29, 19, 14, 3, 2, 4, 9, 5, 48, 62, 58, 40, 51, 69, 55, 76, 81, 102, 120, 71, 63]

plt.title("Codecademy Learners Time Series")

plt.xlabel("Hour")
plt.ylabel("Viewers")

plt.plot(hour, viewers_hour)

plt.legend(['2015-01-01'])

ax = plt.subplot()

ax.set_facecolor('seashell')

ax.set_xticks(hour)
ax.set_yticks([0, 20, 40, 60, 80, 100, 120])

y_upper = [i + (i*0.15) for i in viewers_hour]
y_lower = [i - (i*0.15) for i in viewers_hour]


plt.fill_between(hour, y_lower, y_upper, alpha=0.2)

# Add the code here:
plt.show()



Hasil :

Labels:

Mengapa Ilmu Data - Waktunya Python

Setelah berinteraksi dengan database, sekarang saatnya untuk menganalisis data lebih lanjut dan akhirnya memvisualisasikan data. Dan SQL tidak bisa membawa kita ke sana.

Python adalah bahasa pemrograman untuk tujuan umum. Ini dapat melakukan hampir semua hal yang dapat dilakukan oleh bahasa lain dengan kecepatan yang sebanding atau lebih cepat. Itu sering dipilih oleh Analis Data dan Ilmuwan Data untuk prototyping, visualisasi, dan pelaksanaan analisis data pada dataset.

Ada pertanyaan penting di sini. Banyak bahasa pemrograman lain, seperti R, dapat berguna di bidang ilmu data. Mengapa begitu banyak orang memilih Python?

Salah satu faktor utama adalah keserbagunaan Python. Ada lebih dari 125.000 perpustakaan Python pihak ketiga. Pustaka ini membuat Python lebih bermanfaat untuk tujuan tertentu, dari tradisional (mis. Pengembangan web, pemrosesan teks) hingga yang paling canggih (mis. AI dan pembelajaran mesin). Misalnya, seorang ahli biologi mungkin menggunakan perpustakaan Biopython untuk membantu pekerjaan mereka dalam sekuensing genetik.

Selain itu, Python telah menjadi bahasa utama untuk analisis data. Dengan pustaka yang berfokus pada data seperti panda, NumPy, dan Matplotlib, siapa pun yang akrab dengan sintaksis Python dan aturan dapat menggunakannya sebagai alat yang ampuh untuk memproses, memanipulasi, dan memvisualisasikan data.

Instruksi
1. Catherine baru saja mengunduh Python 3 ke laptop kantornya.

Mari kita coba sepotong kode sederhana. Jalankan program script.py.1


libraries = ["NumPy", "SciPy", "Pandas", "Matplotlib", "Seaborn"]
completion = [100, 100, 96, 0, 0]

libraries.append("scikit-learn")
completion.append(0)

gradebook = list(zip(libraries, completion))

print("Lesson Completion Rates:")
print(gradebook)
print("\n")

# What's next?

# gradebook.append(("BeautifulSoup", 0))
# gradebook.append(("Tensorflow", 0))


Hasil :

Lesson Completion Rates:
[('NumPy', 100), ('SciPy', 100), ('Pandas', 96), ('Matplotlib', 0), ('Seaborn', 0), ('scikit-learn', 0)]

Labels:

Mengapa Ilmu Data - Menjelajahi Data dengan SQL - Lanjutan

Selanjutnya, Catherine ingin melihat pada tingkat churn.

Churn rate adalah persentase pelanggan ke layanan bulanan yang telah dibatalkan. Misalnya, pada bulan Januari, katakanlah Codecademy memiliki 1.000 pelajar. Pada bulan Februari, 200 pelajar mendaftar, dan 250 membatalkan.

Tingkat churn untuk Februari adalah:

pelanggan cancellationstotal = 2501000 + 200 = 20,8% \ frac {cancellations} {total \ pelanggan} = \ frac {250} {1000 + 200} = 20,8 \% total pelanggan

pembatalan = 1000 + 200

250 = 20,8%

Catherine ingin menganalisis tingkat churn untuk Codecademy selama beberapa bulan terakhir sehingga dia menulis kueri SQL lain.

Instruksi

1. Klik Jalankan, untuk melihat analisis Catherine untuk tingkat churn pada Maret 2017.

Rekomendasi apa yang akan Anda buat untuk Codecademy berdasarkan analisis Catherine?

(Permintaan ini mungkin perlu waktu untuk dimuat karena tabel pro_users memiliki 118.135 baris!)

Dalam hasilnya, harus ada tiga kolom:
  • enrollments
  • march_cancellations
  • churn_rate
Query 

SELECT COUNT(DISTINCT user_id) AS 'enrollments',
  COUNT(CASE
        WHEN strftime("%m", cancel_date) = '03'
        THEN user_id
  END) AS 'march_cancellations',
  ROUND(100.0 * COUNT(CASE
        WHEN strftime("%m", cancel_date) = '03'
        THEN user_id
  END) / COUNT(DISTINCT user_id)) AS 'churn_rate'
FROM pro_users
WHERE signup_date < '2017-04-01'
  AND (
    (cancel_date IS NULL) OR
    (cancel_date > '2017-03-01')
  );


Query Results

enrollments march_cancellations churn_rate
16435 4165 25.0

Database Schema

pro_users118135 rows
user_idTEXT
signup_dateTEXT
cancel_dateTEXT

Labels:

Mengapa Ilmu Data - Menjelajahi Data dengan SQL

Menjelajahi Data dengan SQL

Seperti kebanyakan organisasi, Codecademy menggunakan SQL (Structured Query Language) untuk mengakses databasenya.

Basis data adalah kumpulan data yang disimpan di komputer. Data ini biasanya disusun menjadi tabel. Tabel dapat tumbuh besar dan memiliki banyak kolom dan catatan.

Spreadsheet, seperti Microsoft Excel dan Google Sheets, memungkinkan Anda untuk melihat dan memanipulasi data secara langsung: dengan memilih, memfilter, menyortir, dll. Dengan menerapkan sejumlah operasi ini, Anda dapat memperoleh subset data yang Anda cari.

SQL (dilafalkan "S-Q-L" atau "sekuel") memungkinkan Anda untuk menulis kueri yang menentukan subset data yang Anda cari. Tidak seperti Excel dan Lembar, komputer dan SQL Anda akan menangani cara mendapatkan data; Anda dapat fokus pada data apa yang Anda inginkan. Anda dapat menyimpan kueri ini, menyaringnya, membagikannya, dan menjalankannya pada basis data yang berbeda.

Ini adalah cara yang bagus untuk mengakses data dan titik masuk yang bagus ke pemrograman karena sintaksisnya (kosakata khusus yang memberikan instruksi ke komputer) sangat mudah dibaca oleh manusia. Tanpa mengetahui SQL apa pun, Anda mungkin masih bisa menebak apa yang akan dilakukan setiap perintah.

Pada hari pertamanya di Codecademy, Catherine ingin membiasakan diri dengan data perusahaan, jadi dia terhubung ke database dan menggunakan SQL untuk menjelajahi database.

Instruksi

1. Salah satu tabel dalam basis data Codecademy disebut jelajah. Ini berisi informasi tentang setiap kali seseorang mengunjungi situs web Codecademy. Rekatkan kode berikut ke editor kode (panel tengah) dan klik Jalankan.


SELECT * FROM browse LIMIT 10;


Kode ini akan memilih semua (*) kolom dari tabel browse untuk 10 catatan pertama.

Setelah Anda memasukkan kode dengan benar dan mengklik Jalankan, instruksi ini akan berubah menjadi hijau, memberi tahu Anda bahwa Anda telah menyelesaikan pos pemeriksaan ini.


Petunjuk
Periksa data di panel paling kanan:

     Kolom apa yang ada di sana?
     Apa jenis pertanyaan yang Anda miliki tentang situs web Codecademy?

Kolomnya adalah:
  • user_id
  • browse_date
  • item_id 
  •  

     

    Hasil
     

    Query Results

    user_id browse_date item_id
    336f9fdc-aaeb-48a1-a773-e3a935442d45 2017-12-20 3
    336f9fdc-aaeb-48a1-a773-e3a935442d45 2017-12-20 22
    336f9fdc-aaeb-48a1-a773-e3a935442d45 2017-12-20 25
    336f9fdc-aaeb-48a1-a773-e3a935442d45 2017-12-20 24
    4596bb1a-7aa9-4ac9-9896-022d871cdcde 2017-12-20 0
    4596bb1a-7aa9-4ac9-9896-022d871cdcde 2017-12-20 2
    2fdb3958-ffc9-4b84-a49d-5f9f40e9469e 2017-12-20 26
    2fdb3958-ffc9-4b84-a49d-5f9f40e9469e 2017-12-20 24
    fc394c75-36f1-4df1-8665-23c32a43591b 2017-12-20 12
    fc394c75-36f1-4df1-8665-23c32a43591b 2017-12-20 24

    Database Schema

    browse2352 rows
    user_idTEXT
    browse_dateTEXT
    item_idINTEGER
    items33 rows
    idINTEGER
    itemTEXT
    priceREAL
    checkout539 rows
    user_idTEXT
    checkout_dateTEXT
    item_idINTEGER
    purchase472 rows
    user_idTEXT
    purchase_dateTEXT
    item_idINTEGER

Labels:

Ilmu Data - Mengapa ?

Mengapa Ilmu Data?
A Day in the Life - Analis Data

Ini hari pertama Catherine bekerja sebagai Analis Data di Codecademy! Dia senang menggunakan beberapa alat yang dia pelajari di Jalur Ilmu Data, seperti:

     Ekstraksi data dengan SQL
     Dasar-dasar pemrograman dengan Python
     Analisis data menggunakan panda, pustaka Python
     Visualisasi data menggunakan Matplotlib, pustaka Python
     Machine Learning menggunakan scikit-learn, sebuah perpustakaan Python

Labels: