Main Logo
  • Home
  • About
  • Kursus
    • Paket Kursus
    • Roadmap Profesi
    • Data & AI
      • Data Analyst
      • Data Scientist
      • AI Engineer
      • Data Engineer
      • Business Intelligence (BI) Specialist
    • Infrastruktur & Keamanan
      • Network Engineer
      • System Engineer
      • DevOps Engineer
      • Security Engineer
      • Cloud Engineer
    • Programming & Web Development
      • Web & App Developer
    • Spesialisasi
      • Blockchain Engineer
      • IOT Engineer
      • Digital Marketing Specialist
  • Elearning
  • Blog
  • Portfolio Magang
Daftar
Main Logo
  • Home
  • About
  • Kursus
    • Paket Kursus
    • Roadmap Profesi
    • Data & AI
      • Data Analyst
      • Data Scientist
      • AI Engineer
      • Data Engineer
      • Business Intelligence (BI) Specialist
    • Infrastruktur & Keamanan
      • Network Engineer
      • System Engineer
      • DevOps Engineer
      • Security Engineer
      • Cloud Engineer
    • Programming & Web Development
      • Web & App Developer
    • Spesialisasi
      • Blockchain Engineer
      • IOT Engineer
      • Digital Marketing Specialist
  • Elearning
  • Blog
  • Portfolio Magang

Cara Mengubah Tipe Data Kolom di Pandas: Panduan Praktis untuk Pemula

  • July 22, 2026
  • oleh Edusoft Center

Waktu pertama kali saya serius belajar data analysis, ada satu momen yang cukup bikin frustrasi. Saya sudah berhasil membaca file CSV, datanya kelihatan lengkap, tapi begitu mencoba menghitung rata-rata usia penumpang, Python langsung lempar error.

Ternyata masalahnya bukan di kodenya. Masalahnya di tipe data. Kolom yang saya kira berisi angka, ternyata dibaca Pandas sebagai teks. Dan Pandas tidak bisa menghitung rata-rata dari teks.

Kalau kamu pernah mengalami hal serupa, atau ingin tahu cara mencegahnya sebelum masalah itu muncul, artikel ini akan membahasnya dari awal sampai selesai.


Mengapa Tipe Data Itu Penting?

Bayangkan kamu punya kolom berisi angka seperti 22, 35, 28. Kalau Pandas membacanya sebagai teks (object), maka kamu tidak bisa menghitung rata-rata, menjumlahkan, atau membuat grafik darinya. Pandas tidak tahu bahwa angka-angka itu sebenarnya adalah bilangan karena ia menganggapnya sama seperti tulisan biasa.

Inilah kenapa sebelum mulai analisis, penting untuk memastikan setiap kolom punya tipe data yang tepat. Kolom berisi angka harus bertipe int atau float, kolom berisi tanggal harus bertipe datetime, dan kolom berisi kategori bisa diubah ke tipe category agar lebih efisien.


Tipe Data yang Perlu Kamu Tahu

Sebelum praktik, kenalan dulu dengan tipe data yang paling sering ditemui di Pandas:

  • int64 → Bilangan bulat, contoh: 1, 25, 100
  • float64 → Bilangan desimal, contoh: 3.14, 22.5, 0.001
  • object → Teks atau campuran, ini yang sering jadi masalah karena angka pun bisa terbaca sebagai object
  • bool → Nilai benar atau salah (True/False)
  • datetime64 → Tanggal dan waktu
  • category → Data kategorikal seperti jenis kelamin, kota, status

Langkah 1 — Siapkan Data dan Cek Tipe Data Awal

Buka Jupyter Notebook, lalu buat notebook baru. Kita akan menggunakan dataset Titanic yang sudah familiar.

Ketik kode berikut di sel pertama:

python

import pandas as pd

df = pd.read_csv('C:/Users/acer/Downloads/titanic/train.csv')
df.dtypes

Perintah df.dtypes menampilkan tipe data setiap kolom. Jalankan dengan Shift + Enter.

Perhatikan hasilnya. Kamu akan melihat beberapa kolom bertipe float64 padahal seharusnya bisa jadi int, dan beberapa kolom bertipe object. Dari sinilah kita mulai bekerja.


Langkah 2 — Mengubah Tipe Data dengan astype()

Cara paling umum untuk mengubah tipe data di Pandas adalah menggunakan metode astype(). Formatnya sederhana:

python

df['nama_kolom'] = df['nama_kolom'].astype('tipe_baru')

Contoh 1: Mengubah float menjadi int

Kolom PassengerId dan Survived di dataset Titanic bertipe float64, padahal isinya bilangan bulat semua. Mari ubah:

python

df['PassengerId'] = df['PassengerId'].astype('int64')
df['Survived'] = df['Survived'].astype('int64')

print(df[['PassengerId', 'Survived']].dtypes)

Contoh 2: Mengubah object menjadi category

Kolom Sex berisi nilai male dan female, hanya dua kemungkinan. Tipe data category lebih efisien untuk kolom seperti ini karena menghemat memori.

python

df['Sex'] = df['Sex'].astype('category')

print(df['Sex'].dtype)
print(df['Sex'].unique())

Contoh 3: Mengubah beberapa kolom sekaligus

Kalau mau mengubah banyak kolom dalam satu baris, gunakan dictionary:

python

df = df.astype({
    'Pclass': 'int64',
    'SibSp': 'int64',
    'Parch': 'int64'
})

print(df[['Pclass', 'SibSp', 'Parch']].dtypes)

Langkah 3 — Mengubah Tipe Data Angka dengan pd.to_numeric()

Selain astype(), ada cara lain yang lebih aman untuk mengubah kolom menjadi angka, yaitu pd.to_numeric(). Kelebihannya, fungsi ini bisa menangani nilai yang tidak bisa diubah tanpa langsung error.

python

Mau Kuasai Cara Mengubah Tipe Data Kolom di Pandas: Panduan Praktis untuk Pemula Sampai Bisa Praktik Langsung?

Materi ini juga kami ajarkan langsung di kelas Edusoft Center, dibimbing mentor, sampai kamu bisa praktik nyata — bukan cuma baca teori.

Tanya Kursus via WhatsApp Lihat contoh project nyata dari siswa kami →

df['Fare'] = pd.to_numeric(df['Fare'])
print(df['Fare'].dtype)

Parameter tambahan yang berguna: errors='coerce' akan mengubah nilai yang tidak bisa dikonversi menjadi NaN daripada memunculkan error.

python

df['Age'] = pd.to_numeric(df['Age'], errors='coerce')
print(df['Age'].dtype)

Langkah 4 — Mengubah Kolom Tanggal dengan pd.to_datetime()

Untuk kolom yang berisi tanggal, astype() biasanya tidak cukup. Kita butuh pd.to_datetime() agar Pandas benar-benar mengenalinya sebagai tanggal dan bukan sekadar teks.

Karena dataset Titanic tidak punya kolom tanggal, kita buat contoh kecil sendiri:

python

data_contoh = pd.DataFrame({
    'tanggal': ['2024-01-15', '2024-02-20', '2024-03-10'],
    'nilai': [100, 200, 300]
})

print("Sebelum diubah:")
print(data_contoh.dtypes)

data_contoh['tanggal'] = pd.to_datetime(data_contoh['tanggal'])

print("\nSetelah diubah:")
print(data_contoh.dtypes)

Setelah diubah, kamu bisa melakukan berbagai operasi tanggal seperti mengambil tahun, bulan, atau hari dengan mudah.


Langkah 5 — Verifikasi Semua Perubahan

Setelah semua perubahan dilakukan, cek ulang tipe data keseluruhan DataFrame untuk memastikan semuanya sudah sesuai:

python

df.dtypes

Bandingkan hasilnya dengan output di Langkah 1 tadi. Semua kolom yang tadi kamu ubah seharusnya sudah menampilkan tipe data yang baru.


Hal yang Perlu Diperhatikan

Ada beberapa kondisi yang bisa menyebabkan error saat mengubah tipe data:

Kolom mengandung nilai kosong (NaN) Mengubah kolom yang punya NaN ke tipe int akan menyebabkan error karena integer tidak mendukung nilai kosong. Solusinya, isi nilai kosong dulu sebelum mengubah tipe:

python

df['Age'] = df['Age'].fillna(0).astype('int64')

Kolom object berisi campuran angka dan teks Kalau ada satu saja nilai teks di kolom yang seharusnya angka, astype() akan error. Gunakan errors='coerce' di pd.to_numeric() untuk mengatasinya.


Rangkuman

  • df.dtypes → Melihat tipe data semua kolom
  • astype(‘tipe’) → Mengubah tipe data satu atau beberapa kolom
  • pd.to_numeric() → Mengubah kolom menjadi angka dengan penanganan error yang lebih aman
  • pd.to_datetime() → Mengubah kolom menjadi format tanggal

Kesimpulan

Mengubah tipe data kolom adalah salah satu langkah persiapan data yang paling sering dilakukan sebelum analisis dimulai. Data yang masuk ke dalam Python tidak selalu langsung memiliki tipe yang tepat, dan tugas seorang data analyst adalah memastikan setiap kolom terbaca sesuai dengan apa yang sebenarnya ia representasikan.

Dengan menguasai astype(), pd.to_numeric(), dan pd.to_datetime(), kamu sudah punya bekal yang cukup untuk menangani sebagian besar masalah tipe data yang akan ditemui di lapangan.

Penulis : Sandya Gifta Ulimaz Sofiamagaski

Link Github : https://github.com/sandygifta-ui

Mau Kuasai Cara Mengubah Tipe Data Kolom di Pandas: Panduan Praktis untuk Pemula Sampai Bisa Praktik Langsung?

Materi ini juga kami ajarkan langsung di kelas Edusoft Center, dibimbing mentor, sampai kamu bisa praktik nyata — bukan cuma baca teori.

Tanya Kursus via WhatsApp Lihat contoh project nyata dari siswa kami →

Tags: astypedata analysisdata cleaningdata preprocessingEDAjupyter notebookpandasPemulapythontipe data
Previous Post
Next Post

Post comment

Cancel reply

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

Recent Posts

  • Monitoring Server Menggunakan Grafana dan Prometheus
  • Problem Framing: Cara Menentukan Business Question dari Data
  • Heatmap Korelasi dengan Seaborn
  • Tutorial Membersihkan dan Menstandarkan Data String di Pandas
  • Deteksi Outlier dengan IQR Method

Arsip

  • August 2026
  • July 2026
  • June 2026
  • April 2026
  • March 2026
  • February 2026
  • January 2026
  • September 2025
  • August 2025
  • July 2025
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • February 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • September 2017
  • August 2017
  • July 2017
  • June 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • February 2016
  • January 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • June 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015
  • January 2015
  • December 2014
  • November 2014
  • October 2014
  • September 2014
  • August 2014
  • July 2014
  • June 2014
  • May 2014
  • April 2014
  • March 2014
  • February 2014
  • January 2014
  • December 2013
  • November 2013
  • October 2013
  • September 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • October 2012
  • September 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • December 2011
  • November 2011

Tags

#EdusoftCenter apache web server dns server kursus android kursus database kursus dns dan web server kursus dns server kursus ethical hacking kursus hacking kursus jaringan kursus jaringan linux Kursus Komputer kursus komputer di solo kursus komputer di solo / surakarta kursus komputer di surakarta kursus linux Kursus Linux Forensics kursus linux networking kursus linux security kursus linux server kursus mikrotik kursus networking kursus network security kursus php Kursus PHP dan MySQL kursus php mysql kursus proxy kursus security kursus ubuntu kursus ubuntu server kursus web kursus web security kursus web server kursus wordpress kursus wordpress theme linux MySQL pelatihan komputer di solo PHP security training komputer training komputer di solo tutorial php ubuntu wordpress

© Edusoft Center - Kursus Komputer di Solo | 2010 - 2025 | Privacy Policy | Site Map | Portfolio Magang | Butuh tim kami langsung yang mengerjakan? Lihat layanan implementasi →

All Right Reserved

WhatsApp us