Belajar Data Science Lengkap
Disini kita akan belajar data science dasar, namun lengkap. mencakup
- import data
- penanganan data
- analisis
- visualisasi data
Ada keinginan apa yang ada di video ini akan saya buat ebook berbaghasa Indonesia.
Cekidot …
Disini kita akan belajar data science dasar, namun lengkap. mencakup
Ada keinginan apa yang ada di video ini akan saya buat ebook berbaghasa Indonesia.
Cekidot …
Ok, ini adalah catatan penting. Tak lain adalah karena saya membuat buku dan saya ingin kemudahan.
Agar sebuanya menjadi mudah maka saya harus melakukan hal sbb:
Install Pandoc
Karena Pandoc berbasis command line, dan saya agak kesulitan menggunakannya di windows, maka saya memutuskan untuk saya install di Linux (lebih tepatnya armbian), berbekal dengan perintah yang saya dapatkan di blog Mas Endy yang dulu pernah ketemu di Enciety.
sudo apt-get install pandoc texlive-latex-base texlive-xetex latex-beamer
Dan hasilnya error karena latex-beamer tidak ada. Ok saya buang dulu aja latex-beamer yang gunanya buat presentasi, dan saya belum membutuhkannya.
sudo apt-get install pandoc texlive-latex-base texlive-xetex
Berhasil
Menggunakan Pandoc
Kemudian saya coba untuk konversi markdown ke PDF
pandoc -N --variable "geometry=margin=1.2in" --variable fontsize=12pt --variable version=1.0 --toc -o SQL4BusinessAnalist.pdf SQL4BusinessAnalist.md
Okey berhasil dengan format buku standard
Menggunakan Style
Karana saya ingin lebih, maka saya ingin menggunakan format Eisfogel tapi ternyata error…
"template" (line 483, column 16): unexpected "/" expecting "." or ")$"
Bagian ini kemudian saya hapus
$for(babelfonts/pairs)$ \babelfont[$babelfonts.key$]{rm}{$babelfonts.value$} $endfor$
Masih error om
Error producing PDF. ! LaTeX Error: File `sourcesanspro.sty' not found. Type X to quit or to proceed, or enter new name. (Default extension: sty) Enter file name: ! Emergency stop.
l.179 \usepackage
Akhirnya saya install ini
sudo apt-get install texlive-fonts-recommended texlive-fonts-extra
Akhirnya berhasil.
Dan kita run perintah sbb:
pandoc -N "result.md" -o "document1.pdf" --from markdown --template "../pandoc-template/eisvogel.tex" --listings
Itu dulu catatan hari ini nanti kalau ada perkembangan saya update Awokwokwokwok…
Saya mempunyai beberapa file markdown yang ingin saya satukan ke dalam satu file. Berikut skripnya:
1 2 3 4 5 6 | import glob read_files = glob.glob("*.md") with open("result.md", "wb") as outfile: for f in read_files: with open(f, "rb") as infile: outfile.write(infile.read()) |
Skrip Python ini menggunakan modul glob
untuk mencari file-file dengan ekstensi .md
dalam direktori kerja saat ini. Setelah itu, skrip membuka file dengan nama “result.txt” untuk menulis (mode “wb” atau write binary).
Selanjutnya, skrip menggunakan loop for
untuk membaca setiap file yang telah ditemukan oleh glob
dan menggabungkannya ke dalam file “result.md”. Ini dilakukan dengan membuka setiap file yang ditemukan dalam mode baca binary (“rb”) dan menuliskan isinya ke dalam file “result.md” menggunakan metode write()
pada objek file keluaran.
Mari kita bahas baris per baris:
import glob
: Mengimpor modul glob
yang menyediakan fungsi untuk mencocokkan pola dan mencari file dalam direktori.read_files = glob.glob("*.md")
: Menggunakan fungsi glob.glob()
untuk mencocokkan semua file dengan ekstensi .md
dalam direktori kerja saat ini. Hasilnya disimpan dalam variabel read_files
, yang berisi daftar nama file yang sesuai.with open("result.md", "wb") as outfile:
: Membuka file dengan nama “result.md” dalam mode write binary (“wb”). Ini digunakan untuk menulis data dalam mode biner.for f in read_files:
: Memulai loop for
untuk setiap file yang ditemukan.with open(f, "rb") as infile:
: Membuka setiap file dalam mode read binary (“rb”). File ini akan dibaca.outfile.write(infile.read())
: Membaca seluruh konten dari file yang dibuka (infile.read()
) dan menulisnya ke dalam file “result.md” yang juga telah dibuka sebelumnya (outfile.write()
).Dengan demikian, skrip ini menggabungkan isi semua file Markdown dengan ekstensi “.md” dalam direktori kerja ke dalam satu file yang disebut “result.md”.
Ketika pandas melakukan pembacaan data dari excel atau CSV, sering kali pada nama kolom dan data terdapat spasi atau karakter tak terlihat pada sebelum dan sesudahnya.
Dan ini sangat merepotkan data scientis, karena ketika memanggil df[‘nama’] ternyata data tidak muncul hanya karena spasi sehingga baru muncul ketika dipanggil dengan df[‘nama ‘]. Sangat mengganggu. Oleh sebab itu harus dilakukan 2 langkah untuk memebereskan hal ini.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | # Import Library import pandas as pd # open file from excel to dataframe file = "sample_data/STUDI KASUS - SIMULASI RETAIL.xlsx" df = pd.read_excel(file, sheet_name=0) # Membuang spasi sebelum dan sesudah nilai # strip columns df.rename(columns=lambda x: x.strip(), inplace=True) # strip data value yang tipenya object/string df_obj = df.select_dtypes(['object']) df[df_obj.columns] = df_obj.apply(lambda x: x.str.strip()) # dari df[df['Tanggal_Pembelian '] == ' 2022-01-03 '] menjadi df[df['Tanggal_Pembelian'] == '2022-01-03'] |
Masih seperti sebelumnya, ini adalah cara paling praktis untuk melakukan konversi Excel ke SQLite menggunakan google Collabs
1 2 3 | # mount drive from google.colab import drive drive.mount('/content/drive') |
#import library import pandas as pd import sqlite3 #open file from excel to dataframe file = "/content/drive/MyDrive/Colab Notebooks/STUDI KASUS - SIMULASI RETAIL.xlsx" df = pd.read_excel(file, sheet_name=0) #create database and connect it database = "/content/drive/MyDrive/Colab Notebooks/retail_fromxlsx.sqlite3" conn = sqlite3.connect(database) #save data to sqlite df.to_sql(name='retail', con=conn) conn.close() |