Normalisasi Data dengan Python

Normalization Data Python

Normalisasi data adalah teknik yang membantu mendapatkan hasil lebih cepat karena mesin harus memproses rentang data yang lebih kecil. Normalisasi bukanlah tugas yang mudah karena semua hasil Anda bergantung pada pilihan metode normalisasi Anda. Jadi, jika Anda telah memilih metode yang salah untuk menormalkan data Anda, Anda mungkin mendapatkan sesuatu yang berbeda dari harapan Anda.

Normalisasi juga tergantung pada tipe data seperti gambar, teks, numerik, dll. Jadi, setiap tipe data memiliki metode yang berbeda untuk menormalkan. Jadi, dalam artikel ini, kami berfokus pada data numerik.



Metode 1: Menggunakan sklearn

Metode sklearn adalah metode yang sangat terkenal untuk menormalkan data.





Dalam nomor sel [83] : Kami mengimpor semua perpustakaan yang diperlukan, NumPy dan sklearn. Anda dapat melihat bahwa kami mengimpor preprocessing dari sklearn itu sendiri. Itu sebabnya ini adalah metode normalisasi sklearn.

Dalam nomor sel [84] : Kami membuat array NumPy dengan beberapa nilai integer yang tidak sama.

Dalam nomor sel [85] : Kami memanggil metode normalisasi dari prapemrosesan dan meneruskan numpy_array, yang baru saja kami buat sebagai parameter.



Dalam nomor sel [86] : Kita dapat melihat dari hasilnya, semua data integer kita sekarang dinormalisasi antara 0 dan 1.

Metode 2: Normalisasi kolom tertentu dalam kumpulan data menggunakan sklearn

Kami juga dapat menormalkan kolom dataset tertentu. Dalam hal ini, kita akan membahas tentang itu.


Dalam nomor sel [87] : Kami mengimpor pandas perpustakaan dan sklearn.

Dalam nomor sel [88] : Kami membuat file CSV dummy, dan sekarang kami memuat file CSV itu dengan bantuan paket pandas (read_csv).

Dalam nomor sel [89] : Kami mencetak file CSV yang baru saja kami muat.

Dalam nomor sel [90] : Kami membaca kolom tertentu dari file CSV menggunakan np. array dan simpan hasilnya ke value_array.

Dalam nomor sel [92] , kami memanggil metode normalisasi dari prapemrosesan dan meneruskan parameter value_array.

Metode 3: Konversi ke normalisasi tanpa menggunakan kolom ke array (menggunakan sklearn)

Dalam metode 2 sebelumnya, kami membahas bagaimana kolom file CSV tertentu yang dapat kami normalkan. Tetapi terkadang kita perlu menormalkan seluruh dataset, maka kita dapat menggunakan metode di bawah ini di mana kita melakukan normalisasi seluruh dataset tetapi sepanjang kolom (sumbu = 0). Jika kita menyebutkan sumbu = 1, maka itu akan melakukan normalisasi baris-bijaksana. Sumbu = 1 adalah nilai default.


Dalam nomor sel [93] : Kami mengimpor pandas perpustakaan dan sklearn.

Dalam nomor sel [94] : Kami membuat file CSV dummy (demo_numeric.csv), dan sekarang kami memuat file CSV itu dengan bantuan paket pandas (read_csv).

Dalam nomor sel [95] : Kami mencetak file CSV yang baru saja kami muat.

Dalam nomor sel [96] : Sekarang, kami meneruskan seluruh file CSV bersama dengan satu lagi parameter axis =0, yang mengatakan kepada perpustakaan bahwa pengguna ingin menormalkan seluruh kolom dataset.

Dalam nomor sel [97] , kami mencetak hasilnya dan menormalkan data dengan nilai antara 0 dan 1.

Metode 4: Menggunakan MinMaxScaler()

Sklearn juga menyediakan metode normalisasi lain, yang kami sebut sebagai MinMaxScalar. Ini juga merupakan metode yang sangat populer karena mudah digunakan.


Dalam nomor sel [98] : Kami mengimpor semua paket yang diperlukan.

Dalam nomor sel [99] : Kami membuat file CSV dummy (demo_numeric.csv), dan sekarang kami memuat file CSV itu dengan bantuan paket pandas (read_csv).

Dalam nomor sel [100] : Kami mencetak file CSV yang baru saja kami muat.

Dalam nomor sel [101] : Kami memanggil MinMaxScalar dari metode preprocessing dan membuat objek (min_max_Scalar) untuk itu. Kami tidak melewatkan parameter apa pun karena kami perlu menormalkan data antara 0 dan 1. Tetapi jika Anda mau, Anda dapat menambahkan nilai Anda yang akan terlihat pada metode berikutnya.

Dalam nomor sel [102] : Pertama-tama kita membaca semua nama kolom untuk digunakan lebih lanjut untuk menampilkan hasil. Kemudian kita memanggil fit_tranform dari objek yang dibuat min_max_Scalar dan meneruskan file CSV ke dalamnya.

Dalam nomor sel [103] : Kami mendapatkan hasil yang dinormalisasi antara 0 dan 1.

Metode 5: Menggunakan MinMaxScaler(feature_range=(x,y))

Sklearn juga menyediakan opsi untuk mengubah nilai normal dari apa yang Anda inginkan. Secara default, mereka menormalkan nilai antara 0 dan 1. Tetapi ada parameter yang kami sebut feature_range, yang dapat mengatur nilai normal sesuai dengan kebutuhan kami.

Dalam nomor sel [104] : Kami mengimpor semua paket yang diperlukan.

Dalam nomor sel [105] : Kami membuat file CSV dummy (demo_numeric.csv), dan sekarang kami memuat file CSV itu dengan bantuan paket pandas (read_csv).

Dalam nomor sel [106] : Kami mencetak file CSV yang baru saja kami muat.

Dalam nomor sel [107] : Kami memanggil MinMaxScalar dari metode preprocessing dan membuat objek (min_max_Scalar) untuk itu. Tapi kami juga melewati parameter lain di dalam MinMaxScaler (feature_range). Nilai parameter tersebut kita atur 0 hingga 2. Jadi sekarang, MinMaxScaler akan menormalkan nilai data antara 0 hingga 2.

Dalam nomor sel [108] : Pertama-tama kita membaca semua nama kolom untuk digunakan lebih lanjut untuk menampilkan hasil. Kemudian kita memanggil fit_tranform dari objek yang dibuat min_max_Scalar dan meneruskan file CSV ke dalamnya.

Dalam nomor sel [109] : Kami mendapatkan hasil yang dinormalisasi antara 0 dan 2.

Metode 6: Menggunakan penskalaan absolut maksimum

Kami juga dapat melakukan normalisasi data menggunakan pandas. Fitur-fitur ini juga sangat populer dalam menormalkan data. Penskalaan absolut maksimum menormalkan nilai antara 0 dan 1. Kami menerapkan di sini .max() dan .abs() seperti yang ditunjukkan di bawah ini:

Dalam nomor sel [110] : Kami mengimpor perpustakaan panda.

Dalam nomor sel [111] : Kami membuat kerangka data dummy dan mencetak kerangka data itu.

Dalam nomor sel [113] : Kami memanggil setiap kolom dan kemudian membagi nilai kolom dengan .max() dan .abs().

Dalam nomor sel [114] : Kami mencetak hasilnya, dan dari hasilnya, kami mengonfirmasi bahwa data kami dinormalisasi antara 0 dan 1.

Metode 7: Menggunakan metode z-score

Metode selanjutnya yang akan kita bahas adalah metode z-score. Metode ini mengubah informasi menjadi distribusi. Metode ini menghitung rata-rata setiap kolom dan kemudian mengurangi dari setiap kolom dan, akhirnya, membaginya dengan standar deviasi. Ini menormalkan data antara -1 dan 1.

Dalam nomor sel [115] : Kami membuat kerangka data dummy dan mencetak kerangka data itu.

Di nomor sel [117] : Kami menghitung rata-rata kolom dan menguranginya dari kolom. Kemudian kami membagi nilai kolom dengan standar deviasi.

Dalam nomor sel [118] : Kami mencetak data yang dinormalisasi antara -1 dan 1.

Kesimpulan: Kami telah melihat berbagai jenis metode yang dinormalisasi. Diantaranya, sklearn sangat terkenal karena mendukung machine learning. Tapi itu tergantung pada kebutuhan pengguna. Terkadang fitur panda untuk menormalkan data sudah cukup. Kami tidak dapat mengatakan bahwa hanya ada metode di atas normalisasi. Ada banyak metode untuk melakukan normalisasi data yang juga bergantung pada tipe data Anda seperti gambar, numerik, teks, dll. Kami fokus pada data numerik dan Python ini.