Pandas Baca Tulis File Excel

Kode Lima Detik

import pandas as pd
baca = pd.read_excel('nama_file_dibaca.xlsx')
df.to_excel('nama_file_ditulis.xlsx', sheet_name='sheet_satu')

Ref:


Pandas (Python Data Analysis Library) punya fungsi bawaan untuk membaca dan tulis berkas Excel, baik dalam format xls maupun xlsx.

Berkas csv memang kerap kita gunakan untuk saling bertukar, terutama yang berukuran besar, data. Namun jika diranking sebenarnya yang lebih sering kita barter adalah file Excel.

Pada tulisan ini kita akan membaca file Excel dalam format xls yang didapatkan dari sini dan file lain dalam format xlsx dari sini. Karena parameter yang akan digunakan relatif sama dengan saat membaca berkas csv di sini, kita akan “meningkatkan tantangan” dengan menambahkan satu kolom kemudian menyimpan menjadi file Excel baru.

Baca Berkas Excel

Baik dalam format xls maupun xlsx tidak ada bedanya buat pandas, pada fungsi read_excel cukup berikan saja nama file yang akan digunakan.

import pandas as pd
superstore = pd.read_excel('Sample - Superstore.xls')

Ups, sepertinya paket xlrd belum terinstall, pada cell cukup ketik.

!pip install xlrd

Selain, secara default, menggunakan xlrd, pandas.read_excel dapat diperintahkan agar menggunakan engine lain seperti openpyxl atau odf melalui parameter engine.

Kita berhasil membaca berkas Sample – Superstore.xls. Pada file tersebut terdapat tiga sheets yaitu Orders, Returns dan People. Karena tidak memberikan parameter apapun maka sheet yang dibuka adalah yang paling kiri, yaitu Orders.

Jika menambahkan nama sheet kode yang kita gunakan menjadi seperti ini.

returns = pd.read_excel('Sample - Superstore.xls', sheet_name='Returns')

Ingin membaca file xlsx? Langsung tulis saja.

central = pd.read_excel('Central_Superstore.xlsx')

Tambah Kolom

Kita akan menambahkan kolom bernama First Customer Name pada variabel superstore.

fullname = superstore['Customer Name'].str.split(' ', n = 1, expand = True)
superstore['First Customer Name'] = fullname[0]

Pada kode di atas, pertama kita menggunakan fungsi str.split dari pandas, menyimpannya dalam satu variabel baru bernama fullname, kemudian membuat sebuah kolom yang berisi elemen pertama (index 0) variabel fullname.

Kode di atas akan menghasilkan nama depan masing-masing baris data berdasarkan kolom Customer Name.

Simpan pada Berkas Excel Baru

Untuk melakukan penyimpanan cukup dengan kode.

superstore.to_excel('superstore.xlsx')

Ups lagi! Berbeda dengan proses membaca yang membutuhkan paket xlrd, saat menulis berkas Excel pandas membutuhkan openpyxl (atau xlsxwriter). Instalasi dengan perintah di cell.

!pip install openpyxl

Kemudian jalankan lagi perintah sebelumnya.


Notebook tulisan ini dapat diakses di sini.


Cover Photo by Ellicia on Unsplash

Leave a Reply

Your email address will not be published.