Tipe Data Python untuk Sains Data
int, float, complex, bool, str — bagaimana presisi dan pilihan tipe memengaruhi analisis data.
Tipe Data Python untuk Sains Data 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.
Angka dalam Ilmu Data
Python memiliki dua tipe numerik inti: int (bilangan bulat dengan presisi arbitrer) dan float (angka desimal IEEE 754 64-bit). Memilih tipe yang tepat mencegah kesalahan data yang sulit terlihat.
int Bersifat Eksak dan Tak Terbatas
Bilangan bulat Python tidak pernah mengalami luapan. Ukurannya dapat terus bertambah sejauh memori memungkinkan, sehingga sangat berguna untuk hitungan eksak dan faktorial besar.
big = 2 ** 200
print(big)
print(type(big)) # <class 'int'>Jebakan Presisi float
Float tidak dapat merepresentasikan setiap angka desimal secara eksak. Kejutan klasiknya adalah 0.1 + 0.2 tidak persis sama dengan 0.3.
print(0.1 + 0.2) # 0.30000000000000004
print(0.1 + 0.2 == 0.3) # FalseMembandingkan float dengan Aman
Jangan pernah menguji float dengan ==. Gunakan math.isclose dengan toleransi sebagai gantinya.
import math
print(math.isclose(0.1 + 0.2, 0.3)) # TrueDecimal untuk Uang
Untuk mata uang, gunakan decimal.Decimal, yang menyimpan nilai basis 10 secara eksak. Selalu buat Decimal dari string, bukan dari float, agar tidak mewarisi kesalahan float.
from decimal import Decimal
price = Decimal("0.10") + Decimal("0.20")
print(price) # 0.30bool adalah Subkelas int
Dalam Python, True sama dengan 1 dan False sama dengan 0. Dengan demikian, Anda dapat menjumlahkan boolean untuk menghitung kecocokan.
mask = [True, False, True, True]
print(sum(mask)) # 3 matches
print(True + True) # 2Menghitung dengan Boolean
Perilaku bool sebagai int ini digunakan di berbagai tempat dalam NumPy dan pandas: menjumlahkan mask boolean menghitung jumlah baris yang memenuhi suatu kondisi.
ages = [12, 20, 35, 17, 40]
adults = sum(a >= 18 for a in ages)
print(adults) # 3Memeriksa Tipe dengan type()
type(x) mengembalikan kelas tepat dari suatu nilai. Ini berguna ketika sebuah kolom ternyata berisi string, bukan angka.
print(type(5)) # <class 'int'>
print(type(5.0)) # <class 'float'>
print(type("5")) # <class 'str'>Memeriksa Tipe dengan isinstance()
Lebih baik gunakan isinstance daripada type == karena fungsi tersebut menghormati pewarisan. Perhatikan bahwa boolean lolos dalam pemeriksaan int.
print(isinstance(5, int)) # True
print(isinstance(True, int)) # True (bool subclasses int)
print(isinstance(5.0, (int, float))) # TrueJebakan Konversi Implisit
Pencampuran tipe dapat memicu konversi secara diam-diam. Pembagian bilangan bulat yang melibatkan float menghasilkan float; menggabungkan angka dengan string memunculkan TypeError. Bersihkan tipe data Anda sejak awal.
print(5 / 2) # 2.5 (true division always float)
print(5 // 2) # 2 (floor division)
# "id-" + 5 # TypeError
print("id-" + str(5)) # id-5Kejutan float dalam Agregasi
Menjumlahkan banyak float mengakumulasi kesalahan kecil. Untuk kumpulan data besar, pilih NumPy yang menggunakan penjumlahan berpasangan untuk mengurangi penyimpangan.
vals = [0.1] * 10
print(sum(vals)) # 0.9999999999999999
# NumPy: np.sum(vals) is more numerically stableUji Cepat
Uji pemahaman Anda tentang tipe Python.
Rangkuman
Fakta numerik penting untuk pekerjaan data:
intbersifat eksak dan tak terbatasfloatbersifat aproksimatif; gunakanmath.isclose, bukan==Decimal("...")untuk uangbooladalah int:sum(mask)menghitung jumlah kecocokantype()menampilkan kelas, sedangkanisinstance()menghormati pewarisan- Waspadai konversi diam-diam dalam pembagian dan penggabungan
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Tipe Data Python untuk Sains Data” gratis?
Ya — teks lengkap “Tipe Data Python untuk Sains Data” 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 “Tipe Data Python untuk Sains Data”?
int, float, complex, bool, str — bagaimana presisi dan pilihan tipe memengaruhi analisis data. 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 “Tipe Data Python untuk Sains Data” 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
- Lingkungan Virtual dan pip
- Jupyter Notebooks untuk Sains Data
- Tipe Data Python untuk Sains Data
- Bekerja dengan Python REPL dan IPython