# Nakafa Framework: LLM URL: /id/subject/university/bachelor/ai-ds/ai-programming/attribute-data-type-numpy Source: https://raw.githubusercontent.com/nakafaai/nakafa.com/refs/heads/main/packages/contents/subject/university/bachelor/ai-ds/ai-programming/attribute-data-type-numpy/id.mdx Output docs content for large language models. --- export const metadata = { title: "Atribut dan Tipe Data dengan NumPy", description: "Pelajari atribut array NumPy dan sistem tipe data: shape, dtype, size, ndim. Panduan lengkap dengan contoh kode teruji untuk pemrograman AI dan data science.", authors: [{ name: "Nabil Akbarazzima Fatih" }], date: "09/20/2025", subject: "Pemrograman AI", }; ## Sistem Tipe Data NumPy Setiap data dalam NumPy memiliki tipe spesifik yang menentukan cara penyimpanan dan pemrosesannya. Bayangkan tipe data seperti wadah berbeda, masing-masing dirancang untuk jenis informasi tertentu. Boolean hanya butuh satu bit, sedangkan bilangan kompleks memerlukan ruang jauh lebih besar. Sistem tipe NumPy memastikan semua elemen array berbagi tipe data yang sama untuk efisiensi maksimal. Keseragaman ini memungkinkan kode C di bawahnya memproses data dengan kecepatan luar biasa. Untuk detail lengkap setiap tipe data, lihat [dokumentasi tipe data NumPy](https://numpy.org/doc/stable/user/basics.types.html) yang mencakup spesifikasi teknis dan pertimbangan memori. ### Tipe Data Dasar NumPy mendukung tipe data Python native dengan tambahan underscore trailing untuk kompatibilitas dengan kode C: 1. **Boolean** (`bool_`) untuk nilai True atau False yang disimpan sebagai byte 2. **Integer** (`int_`) sebagai tipe integer default, biasanya sama dengan C long 3. **Float** (`float_`) untuk bilangan desimal dengan presisi ganda 4. **Complex** (`complex_`) untuk bilangan kompleks dengan dua komponen float ### Tipe Data Numerik Spesifik NumPy menyediakan kontrol presisi yang detail dengan berbagai ukuran tipe data numerik: | Kategori | Tipe Data | Deskripsi | Rentang Nilai | |----------|-----------|-----------|---------------| | **Integer Signed** | `int8` | 8-bit signed integer | -128 hingga 127 | | | `int16` | 16-bit signed integer | -32768 hingga 32767 | | | `int32` | 32-bit signed integer | -2147483648 hingga 2147483647 | | | `int64` | 64-bit signed integer | Rentang sangat besar | | **Integer Unsigned** | `uint8` | 8-bit unsigned integer | 0 hingga 255 | | | `uint16` | 16-bit unsigned integer | 0 hingga 65535 | | | `uint32` | 32-bit unsigned integer | 0 hingga 4294967295 | | | `uint64` | 64-bit unsigned integer | Rentang sangat besar positif | | **Float** | `float16` | Half-precision float | 5 bit eksponen, 10 bit mantissa | | | `float32` | Single-precision float | 8 bit eksponen, 23 bit mantissa | | | `float64` | Double-precision float | 11 bit eksponen, 52 bit mantissa | | **Complex** | `complex64` | Complex number | Dua 32-bit float | | | `complex128` | Complex number | Dua 64-bit float | ### Menentukan Tipe Data Kamu dapat menentukan tipe data saat membuat array atau mengubahnya setelah array dibuat: ### Deteksi Otomatis Tipe Data NumPy secara otomatis mendeteksi tipe data berdasarkan elemen yang diberikan: ## Atribut Array NumPy Setiap array NumPy memiliki atribut yang memberikan informasi penting tentang struktur dan karakteristiknya. Atribut ini seperti kartu identitas yang menjelaskan semua detail penting tentang array. ### Atribut Dimensi dan Bentuk Atribut dimensi dan bentuk memberikan informasi struktural yang penting tentang array. Mari kita lihat bagaimana cara mengakses dan menginterpretasikan atribut-atribut ini. ` } ]} /> ### Penjelasan Atribut Penting | Atribut | Fungsi | Contoh Hasil | |---------|---------|--------------| | `ndarray.shape` | Jumlah elemen di setiap axis | `(2, 3)` untuk array 2x3 | | `ndarray.ndim` | Jumlah axis/dimensi | `2` untuk array 2D | | `ndarray.size` | Total jumlah elemen | `6` untuk array 2x3 | | `ndarray.dtype` | Tipe data elemen | `int64`, `float64`, dll | | `ndarray.data` | Pointer ke awal data array | Memory address | ### Konsistensi Tipe Data Semua elemen dalam array NumPy harus memiliki tipe data yang sama. Objek `numpy.dtype` menjelaskan bagaimana item disimpan dan diinterpretasikan dalam memori. Ketika kamu mencampur tipe data yang berbeda, NumPy akan secara otomatis melakukan konversi ke tipe data yang paling umum. ## Konversi dan Manipulasi Tipe Data NumPy menyediakan berbagai cara untuk mengkonversi dan memanipulasi tipe data array sesuai kebutuhan analisis data. ### Metode Konversi Tipe Data Konversi tipe data memungkinkan kamu mengubah representasi data sesuai kebutuhan analisis. Metode `astype()` adalah cara paling umum untuk melakukan konversi eksplisit. ### Optimasi Memori dengan Tipe Data Memilih tipe data yang tepat dapat menghemat memori secara signifikan, terutama untuk dataset besar. Perbedaan ukuran tipe data dapat memberikan penghematan yang dramatis pada aplikasi skala besar. ### Informasi Detail Tipe Data NumPy menyediakan informasi detail tentang setiap tipe data yang dapat membantu dalam optimasi. Informasi ini berguna untuk memahami trade-off antara presisi dan penggunaan memori. ## Penggunaan Praktis Atribut Array Memahami atribut array sangat penting untuk debugging, optimasi, dan manipulasi data yang efektif dalam pemrograman ilmiah. ### Analisis Struktur Data Fungsi analisis membantu kamu memahami karakteristik array secara komprehensif. Ini sangat berguna ketika bekerja dengan data yang kompleks atau debugging program. ### Validasi Data dan Debugging Validasi data adalah langkah penting sebelum melakukan analisis atau machine learning. Fungsi validasi membantu mengidentifikasi potensi masalah dalam dataset.