Bagaimana cara menangani nilai 'nan' dalam pipeline pra-pemrosesan data?

Jan 20, 2026

Tinggalkan pesan

David Wang
David Wang
Sebagai insinyur senior di departemen sistem distribusi kami, saya fokus pada merancang solusi distribusi CATV/SAT yang andal. Pekerjaan saya memastikan pengiriman sinyal yang mulus di daerah perkotaan dan pedesaan.

Hai! Sebagai pemasok nan berkualitas tinggi (bukan istilah umum, tapi mari kita bahas di blog ini), saya telah melihat sebagian besar jalur pipa pra-pemrosesan data dan nilai 'nan' sial yang sering muncul. Jadi, di blog ini, saya akan memandu Anda bagaimana menangani nilai-nilai 'nan' ini seperti seorang profesional.

Pertama, mari kita pahami apa itu nilai 'nan'. 'Nan' adalah singkatan dari 'Bukan Angka'. Ini adalah nilai titik mengambang khusus yang mewakili nilai yang tidak terdefinisi atau tidak dapat direpresentasikan dalam perhitungan numerik. Anda dapat menemukan nilai 'nan' ini dalam kumpulan data karena berbagai alasan. Mungkin ada kesalahan saat pengumpulan data, seperti kerusakan sensor atau pengguna lupa memasukkan nilai. Atau mungkin ada perhitungan yang mengakibatkan operasi tidak valid, misalnya membagi dengan nol.

Sekarang, mengapa begitu penting menangani nilai-nilai 'nan'? Ya, sebagian besar algoritme pembelajaran mesin dan alat analisis data tidak dapat menangani nilai 'nan'. Mereka akan memberikan kesalahan atau memberi Anda hasil yang tidak akurat. Jadi, menangani nilai 'nan' adalah langkah penting dalam jalur pra - pemrosesan data.

GPU-4GAC-V-R-1XPON+4GE+1POTS+1USB3.0+CATV+AX3000 WIFI6 HGU ONU

1. Mengidentifikasi Nilai-Nilai 'nan'

Langkah pertama dalam menangani nilai-nilai 'nan' adalah mengidentifikasinya. Di Python, jika Anda menggunakan perpustakaan seperti Pandas, itu sangat mudah. Anda dapat menggunakanisnull()atauadalah()metode. Misalnya:

impor panda sebagai pd impor numpy as np data = {'col1': [1, 2, np.nan, 4], 'col2': [5, np.nan, 7, 8]} df = pd.DataFrame(data) nan_mask = df.isnull() print(nan_mask)

Kode ini akan membuat DataFrame dengan beberapa nilai 'nan' dan kemudian menghasilkan topeng boolean yang menunjukkan di mana nilai 'nan' berada.

2. Menghapus Nilai 'nan'

Salah satu cara paling sederhana untuk menangani nilai 'nan' adalah dengan menghapusnya. Di Pandas, Anda dapat menggunakanmenjatuhkan()metode.

clean_df = df.dropna() mencetak(clean_df)

Ini akan menghapus semua baris yang berisi nilai 'nan'. Namun, pendekatan ini mempunyai kelemahan. Jika Anda memiliki banyak nilai 'nan', Anda mungkin akan kehilangan sejumlah besar data. Dan jika nilai 'nan' tidak terdistribusi secara acak, Anda dapat menimbulkan bias pada kumpulan data Anda.

3. Lukisan 'nan' Bernilai

Imputasi adalah cara yang lebih canggih untuk menangani nilai-nilai 'nan'. Daripada menghapus titik data dengan nilai 'nan', Anda menggantinya dengan nilai perkiraan.

Imputasi Mean/Median/Mode

Untuk kolom numerik, Anda dapat mengganti nilai 'nan' dengan mean, median, atau modus kolom.

mean_col1 = df['col1'].mean() df['col1'] = df['col1'].fillna(mean_col1)

Kode ini menggantikan nilai 'nan' di kolom 'col1' dengan mean kolom tersebut. Imputasi rata-rata cepat dan mudah, namun dapat mengurangi varians dalam data Anda. Imputasi median adalah pilihan yang lebih baik jika data Anda memiliki outlier, karena median tidak terlalu terpengaruh oleh nilai ekstrem.

Untuk kolom kategorikal, Anda dapat menggunakan mode (nilai paling sering).

mode_col2 = df['col2'].mode()[0] df['col2'] = df['col2'].fillna(mode_col2)

Interpolasi

Interpolasi adalah cara lain untuk memperhitungkan nilai 'nan', terutama untuk data deret waktu. Pandas menyediakanmenambah()metode.

df = pd.DataFrame({'nilai': [1, np.nan, 3, 4, np.nan, 6]}) df['nilai'] = df['nilai'].interpolate() print(df)

Metode ini memperkirakan nilai yang hilang berdasarkan nilai titik data di sekitarnya.

4. Menggunakan Teknik Tingkat Lanjut

Ada juga teknik yang lebih canggih untuk menangani nilai 'nan', seperti menggunakan algoritma pembelajaran mesin untuk memprediksi nilai yang hilang. Misalnya, Anda dapat menggunakan pohon keputusan atau hutan acak untuk memprediksi nilai 'nan' berdasarkan fitur lain dalam kumpulan data Anda.

Produk Kami dan Kesesuaiannya

Sebagai pemasok nan, saya tahu bahwa memiliki data yang bersih dan andal sangat penting untuk mengambil keputusan yang tepat. Itu sebabnya produk kami dirancang untuk bekerja secara lancar dengan jalur prapemrosesan data Anda. Baik Anda mengerjakan proyek skala kecil atau aplikasi perusahaan skala besar, produk nan kami dapat membantu Anda menangani nilai 'nan' dengan lebih efisien.

Dan berbicara tentang produk terkait, kami juga menawarkan beberapa perangkat XPON ONU yang hebat. Lihat produk luar biasa ini:

Perangkat ini dirancang untuk menyediakan konektivitas berkecepatan tinggi dan andal, yang penting untuk pengumpulan dan analisis data.

Hubungi Kami untuk Pembelian

Jika Anda tertarik dengan produk nan kami atau perangkat XPON ONU apa pun, kami akan senang mendengar pendapat Anda. Apakah Anda memiliki pertanyaan tentang produk kami, memerlukan penawaran, atau ingin mendiskusikan solusi khusus, jangan ragu untuk menghubungi kami. Kami di sini untuk membantu Anda memaksimalkan data dan memastikan alur prapemrosesan data Anda berjalan lancar.

Referensi

  • VanderPlas, J. (2016). Buku Panduan Ilmu Data Python: Alat Penting untuk Bekerja dengan Data. O'Reilly Media.
  • McKinney, W. (2012). Python untuk Analisis Data: Perselisihan Data dengan Pandas, NumPy, dan IPython. O'Reilly Media.
Kirim permintaan
Hubungi kamiJika ada pertanyaan

Anda dapat menghubungi kami melalui telepon, email, atau formulir online di bawah ini. Spesialis kami akan segera menghubungi Anda kembali.

Hubungi sekarang!