python pandas format file
Python

Python Pandas : Membaca Berbagai Jenis Format File

Pandas memungkinkan kita untuk membaca dan menganalisis dari berbagai jenis data seperti CSV, JSON, XLSX, HTML, XML

Pada artikel sebelumnya kita telah berkenalan dengan fungsi read_csv() untuk membaca file format CSV

Kita akan bahas satu persatu cara membaca format file di Pandas

Contents

CSV

Untuk membaca file CSV kita gunakan fungsi read_csv()

umumnya nilai dalam format CSV dipisahkan oleh koma sehingga parameter separator fungsi read_csv() adalah koma

Jika nilai tidak terpisah oleh koma maka harus ditambahkan parameter separator sesuai dengan bentuk file

Misalnya, file CSV yang dipisah oleh titik koma (;)

Pertama buat file CSV dengan isi sebagai berikut dan simpan dengan nama data.csv

Name;Address
Faqih;Bandung
Ina;Jakarta
Doni;Surabaya
Roni;Bali

Kemudian baca file data.csv di Jupyter Notebook

Jika tidak didefinisikan separatornya maka akan dianggap 1 field seperti pada hasil pertama

Contoh lainnya misal terdapat data di CSV yang tidak memiliki header (update file CSV dengan menghapus headernya seperti ini)

Faqih;Bandung
Ina;Jakarta
Doni;Surabaya
Roni;Bali

Maka saat membaca file parameter headernya harus menjadi None agar baris pertama dari data tidak dianggap sebagai header

Kita juga bisa mendefinisikan header dengan menambahkan parameter names dan memasukkan array untuk setiap fieldnya

Detail parameter lainnya dapat kita ketahui dengan menekan tombol shift+tab di dalam fungsi di Jupyter Notebook

JSON

JSON (JavaScript object notation) adalah format file yang berbentuk semi-structured artinya setiap baris data tidak harus memiliki field yang sama dengan baris data lainnya

Format JSON biasanya sering digunakan untuk menyimpan data dari social media, IoT dan sebagainya yang membutuhkan fleksibilitas penyimpanan data text di file

Pertama kita buat dulu file JSON yang berbentuk JSON array dengan nama data.json dengan isi sebagai berikut

[
	{"Name": "Faqih","Address": "Bandung"},
	{"Name": "Ina","Address": "Jakarta"},
	{"Name": "Doni","Address": "Surabaya"},
	{"Name": "Roni","Address": "Bali"}
]

Ada juga JSON yang berbentuk JSON Object seperti ini

{"Name": "Faqih","Address": "Bandung"}
{"Name": "Ina","Address": "Jakarta"}
{"Name": "Doni","Address": "Surabaya"}
{"Name": "Roni","Address": "Bali"}

Bentuk JSON diatas adalah bentuk JSON object dan biasanya ditemui dari sistem yang menghasilkan data secara terus menerus seperti data hasil stream dari IoT

Selanjutnya kita baca file tersebut dengan Pandas dengan menggunakan parameter lines=True

Ada juga JSON yang berbentuk nested yang lebih komplek dan harus dilakukan proses Flatten untuk menormalisasi datanya.. mungkin akan kita bahas di artikel lainnya

XLSX

Format selanjutnya adalah format XLSX atau merupakan format dari Ms Excel

Gunakan fungsi read_excel() untuk membaca isi dari data

Misalnya kita punya File excel dengan nama data.xlsx dengan nama sheet mahasiswa

Cara membacanya di Pandas adalah sebagai berikut

Jika kita mempunyai sheet lainnya dan ingin dibaca cukup ganti saja parameter sheetname sesuai dengan sheet yang ingin dibaca

Misalkan kita tambahkan sheet dosen

HTML

Pandas juga dapat membaca file HTML.. misalnya ingin membaca table yang berada di halaman HTML

Misalnya kita punya Table HTML seperti ini

<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<body>
	<table>
		<th>
			<td>Name</td>
			<td>Address</td>
		</th>
		<tr>
			<td>Faqih</td>
			<td>Bandung</td>
		</tr>
		<tr>
			<td>Ina</td>
			<td>Jakarta</td>
		</tr>
	</table>
</body>
</html>

Kita dapat menggunakan read_html() untuk membaca kodenya

Karena hasilnya berupa list kita dapat menambahkan element ke-0 dengan tambahan [0] di belakang fungsi read_html()

Jika kita ingin membaca table dari web cukup diparsing saja url nya di fungsi read_html()

Misalnya kita akan membaca table di link ini https://ngodingdata.com/tutorial-mongodb-memahami-konsep-database-nosql/’ yang di dalam artikel ini terdapat table seperti ini

Kita gunakan fungsi read_html() hasilnya adalah seperti ini

Contoh-contoh diatas adalah cara untuk membaca beberapa jenis format file dengan Python Pandas

Selanjutnya kita akan belajar cara menangani missing value dengan Pandas.. Stay tuned 😀

Leave a Reply

Your email address will not be published. Required fields are marked *