Menyimpan Data yang Dikumpulkan secara Efisien
Menyimpan ke CSV/JSON/Parquet, menambahkan data dengan aman, deduplikasi, dan pengumpulan inkremental.
Menyimpan Data yang Dikumpulkan secara Efisien adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 4 pelajaran total.
Dari Respons Mentah ke Data Tersimpan
Setelah mengumpulkan data, Anda perlu menyimpannya agar dapat dimuat ulang, dibagikan, dan dianalisis. Format yang tepat dan beberapa kebiasaan sederhana dapat memberikan perbedaan besar dalam kecepatan dan penggunaan disk.
Pelajaran ini membahas CSV, Parquet, penambahan kelompok data, dan deduplikasi.
JSON ke DataFrame
Respons API biasanya berupa daftar kamus. pd.DataFrame mengubahnya secara langsung menjadi tabel yang siap disimpan.
import pandas as pd
records = [
{"id": 1, "name": "A", "score": 9.5},
{"id": 2, "name": "B", "score": 8.0},
]
df = pd.DataFrame(records)
print(df)Menyimpan ke CSV dengan df.to_csv
CSV bersifat universal dan mudah dibaca manusia. Simpan dengan to_csv; berikan index=False agar indeks baris tidak ditulis sebagai kolom tambahan.
df.to_csv("data.csv", index=False)
# Reload
df2 = pd.read_csv("data.csv")Keterbatasan CSV
CSV praktis, tetapi memiliki kekurangan untuk pekerjaan AI:
- Tidak memiliki tipe data — semuanya disimpan sebagai teks, sehingga tipe data ditebak ulang saat dimuat
- Berkas berukuran besar dan secara bawaan tidak dikompresi
- Lambat dibaca untuk kumpulan data besar
Untuk data yang lebih besar atau sering dimuat ulang, Parquet lebih baik.
Menyimpan ke Parquet dengan df.to_parquet
Parquet adalah format biner berorientasi kolom. Format ini mempertahankan tipe data, dapat dikompresi dengan baik, dan dimuat jauh lebih cepat daripada CSV.
Format ini memerlukan mesin seperti pyarrow yang telah terpasang.
df.to_parquet("data.parquet", index=False)
df2 = pd.read_parquet("data.parquet")
print(df2.dtypes) # types preserved, no re-guessingCSV vs Parquet — Kapan Menggunakan Masing-Masing
Pedoman umumnya:
- CSV: data kecil, berbagi dengan alat non-Python, pemeriksaan cepat
- Parquet: data besar, pemuatan berulang, ketepatan tipe data, alur analitik
Untuk pekerjaan pengumpulan yang memasok data ke model, utamakan Parquet.
Menambahkan Kelompok Data Baru dengan pd.concat
Pengumpulan sering dilakukan dalam beberapa kelompok data. Gabungkan DataFrame yang sudah ada dengan DataFrame baru menggunakan pd.concat.
ignore_index=True memberi nomor ulang pada indeks agar tetap rapi.
new_batch = pd.DataFrame(new_records)
df = pd.concat([df, new_batch], ignore_index=True)
print(len(df))Menambahkan Langsung ke Berkas CSV
Untuk menambahkan data ke CSV yang sudah ada tanpa memuatnya, buka berkas dalam mode penambahan dan lewati header pada penulisan berikutnya.
import os
header = not os.path.exists("data.csv")
new_batch.to_csv("data.csv", mode="a", header=header, index=False)Mengapa Menghapus Duplikasi
Menjalankan ulang pengumpulan, halaman yang saling tumpang tindih, atau percobaan ulang dapat membuat baris duplikat. Duplikasi memperbesar jumlah dan dapat bocor di antara pemisahan data pelatihan dan pengujian, sehingga evaluasi model menjadi kurang baik.
Selalu hapus duplikasi setelah menggabungkan kelompok data.
drop_duplicates(subset=[id])
Gunakan kunci unik yang stabil (biasanya id) dengan drop_duplicates(subset=...). Cara ini menghapus pengulangan meskipun bidang lain sedikit berubah.
keep="last" menyimpan versi terbaru dari setiap id.
df = df.drop_duplicates(subset=["id"], keep="last").reset_index(drop=True)
print(len(df), "unique rows")Pembantu Penyimpanan dan Penggabungan
Gabungkan semua bagian: muat Parquet yang sudah ada jika tersedia, gabungkan kelompok data baru, hapus duplikasi berdasarkan id, lalu simpan kembali. Aman untuk dijalankan berulang kali.
import os
import pandas as pd
def save_merge(new_df, path="data.parquet", key="id"):
if os.path.exists(path):
old = pd.read_parquet(path)
new_df = pd.concat([old, new_df], ignore_index=True)
new_df = new_df.drop_duplicates(subset=[key], keep="last")
new_df.to_parquet(path, index=False)
return new_dfPemeriksaan Singkat: Pilihan Format
Anda berulang kali memuat kumpulan data besar untuk pelatihan model dan memerlukan tipe data tetap terjaga dengan pembacaan yang cepat.
Rangkuman: Menyimpan Data secara Efisien
Sekarang Anda dapat menyimpan data yang dikumpulkan dengan baik:
pd.DataFrameuntuk mengubah catatan JSON menjadi tabelto_csv(index=False)untuk teks portabel,to_parquetuntuk penyimpanan bertipe yang cepatpd.concat(ignore_index=True)atau mode append CSV untuk kelompok datadrop_duplicates(subset=["id"])untuk menjaga keunikan baris
Selanjutnya: bekerja dengan API data publik yang sebenarnya.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Menyimpan Data yang Dikumpulkan secara Efisien” gratis?
Ya — teks lengkap “Menyimpan Data yang Dikumpulkan secara Efisien” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Menyimpan Data yang Dikumpulkan secara Efisien”?
Menyimpan ke CSV/JSON/Parquet, menambahkan data dengan aman, deduplikasi, dan pengumpulan inkremental. Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Learn AI with Python?
Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Menyimpan Data yang Dikumpulkan secara Efisien” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?
Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Dasar-Dasar REST API untuk Pengumpulan Data
- Membuat Halaman dan Mengumpulkan Dataset Besar
- Menyimpan Data yang Dikumpulkan secara Efisien
- Bekerja dengan API Data Publik