Normalisasyon ng Data sa Python

Normalization Data Python



Ang normalisasyon ng data ay isang pamamaraan na makakatulong upang mas mabilis na makuha ang resulta dahil kailangang maproseso ng makina ang isang mas maliit na saklaw ng data. Ang normalisasyon ay hindi isang madaling gawain sapagkat ang lahat ng iyong mga resulta ay nakasalalay sa pagpili ng iyong gawing normalize. Kaya, kung napili mo ang maling pamamaraan upang gawing normal ang iyong data, maaari kang makakuha ng ibang bagay mula sa iyong mga inaasahan.

Ang normalisasyon ay nakasalalay din sa uri ng data tulad ng mga imahe, teksto, bilang, atbp. Kaya, ang bawat uri ng data ay may iba't ibang pamamaraan upang gawing normal. Kaya, sa artikulong ito, nakatuon kami sa numerong data.







Paraan 1: Paggamit ng sklearn

Ang pamamaraan ng sklearn ay isang tanyag na pamamaraan upang gawing normal ang data.





Sa cell number [83] : Ina-import namin ang lahat ng kinakailangang mga aklatan, NumPy at sklearn. Maaari mong makita na ini-import namin ang preprocessing mula sa sklearn mismo. Iyon ang dahilan kung bakit ito ang pamamaraan ng pag-normalize ng sklearn.





Sa cell number [84] : Lumikha kami ng isang NumPy array na may ilang halaga ng integer na hindi pareho.

Sa cell number [85] : Tinawag namin ang normalize na pamamaraan mula sa preprocessing at naipasa ang numpy_array, na nilikha lamang namin bilang isang parameter.



Sa cell number [86] : Maaari naming makita mula sa mga resulta, ang aming lahat ng integer data ay na-normalize na ngayon sa pagitan ng 0 at 1.

Paraan 2: gawing normal ang isang partikular na haligi sa isang dataset gamit ang sklearn

Maaari din nating gawing normal ang partikular na haligi ng dataset. Dito, tatalakayin natin ang tungkol dito.


Sa cell number [87] : Ini-import namin ang mga pandas ng library at sklearn.

Sa cell number [88] : Lumikha kami ng isang dummy CSV file, at kinakarga na namin ang CSV file na iyon sa tulong ng pandas (read_csv) na pakete.

Sa cell number [89] : Nai-print namin ang file na CSV na na-load namin kamakailan.

Sa cell number [90] : Nabasa namin ang partikular na haligi ng file ng CSV gamit ang np. i-array at iimbak ang resulta sa value_array.

Sa cell number [92] , tinawag namin ang normalize na pamamaraan mula sa preprocessing at naipasa ang parameter ng value_array.

Paraan 3: Mag-convert upang gawing normal nang hindi ginagamit ang mga haligi upang mag-array (gamit ang sklearn)

Sa nakaraang pamamaraan 2, tinalakay namin kung paano sa isang partikular na haligi ng file ng CSV na maaari naming gawing normal. Ngunit kung minsan kailangan naming gawing normal ang buong dataset, pagkatapos ay maaari naming gamitin ang pamamaraan sa ibaba kung saan ginagawa naming gawing normal ang buong dataset ngunit kasama ang haligi ng haligi (axis = 0). Kung banggitin namin ang axis = 1, pagkatapos ay gagawin itong normal na hilera. Ang axis = 1 ay sa pamamagitan ng default na halaga.


Sa cell number [93] : Ini-import namin ang mga pandas ng library at sklearn.

Sa cell number [94] : Lumikha kami ng isang dummy CSV file (demo_numeric.csv), at ina-load na namin ang CSV file na iyon sa tulong ng pandas (read_csv) na pakete.

Sa cell number [95] : Nai-print namin ang file na CSV na na-load namin kamakailan.

Sa cell number [96] : Ngayon, ipinapasa namin ang buong file ng CSV kasama ang isa pang dagdag na axis ng parameter = 0, na sinabi sa library na nais ng gumagamit na gawing normal ang buong haligi ng dataset.

Sa cell number [97] , nai-print namin ang resulta at ginawang normal ang data na may halaga sa pagitan ng 0 at 1.

Paraan 4: Paggamit ng MinMaxScaler ()

Nagbibigay din ang sklearn ng isa pang pamamaraan ng normalisasyon, na tinawag naming MinMaxScalar. Ito rin ay isang napakapopular na pamamaraan dahil madali itong gamitin.


Sa cell number [98] : Ina-import namin ang lahat ng kinakailangang mga pakete.

Sa cell number [99] : Lumikha kami ng isang dummy CSV file (demo_numeric.csv), at ina-load na namin ang CSV file na iyon sa tulong ng pandas (read_csv) na pakete.

Sa cell number [100] : Nai-print namin ang file na CSV na na-load namin kamakailan.

Sa cell number [101] : Tinawag namin ang MinMaxScalar mula sa preprocessing na pamamaraan at lumikha ng isang bagay (min_max_Scalar) para doon. Hindi kami nakapasa sa anumang mga parameter dahil kailangan naming gawing normal ang data sa pagitan ng 0 at 1. Ngunit kung nais mo, maaari mong idagdag ang iyong mga halaga na makikita sa susunod na pamamaraan.

Sa cell number [102] : Una naming binasa ang lahat ng mga pangalan ng mga haligi para sa karagdagang paggamit upang maipakita ang mga resulta. Pagkatapos ay tawagan namin ang fit_tranform mula sa nilikha na object na min_max_Scalar at ipinasa ang CSV file doon.

Sa cell number [103] : Nakukuha namin ang na-normalize na mga resulta na nasa pagitan ng 0 at 1.

Paraan 5: Paggamit ng MinMaxScaler (tampok_range = (x, y))

Nagbibigay din ang sklearn ng pagpipilian upang baguhin ang na-normalize na halaga ng nais mo. Bilang default, ginagawa nilang normal ang halaga sa pagitan ng 0 at 1. Ngunit may isang parameter na tinawag naming tampok_range, na maaaring magtakda ng na-normalize na halaga ayon sa aming mga kinakailangan.

Sa cell number [104] : Ina-import namin ang lahat ng kinakailangang mga pakete.

Sa cell number [105] : Lumikha kami ng isang dummy CSV file (demo_numeric.csv), at ina-load na namin ang CSV file na iyon sa tulong ng pandas (read_csv) na pakete.

Sa cell number [106] : Nai-print namin ang file na CSV na na-load namin kamakailan.

Sa cell number [107] : Tinawag namin ang MinMaxScalar mula sa preprocessing na pamamaraan at lumikha ng isang bagay (min_max_Scalar) para doon. Ngunit pumasa rin kami ng isa pang parameter sa loob ng MinMaxScaler (tampok_range). Ang halagang parameter na iyon ay itinakda namin 0 hanggang 2. Kaya ngayon, gawing normal ng MinMaxScaler ang mga halaga ng data sa pagitan ng 0 hanggang 2.

Sa cell number [108] : Una naming binasa ang lahat ng mga pangalan ng mga haligi para sa karagdagang paggamit upang maipakita ang mga resulta. Pagkatapos ay tawagan namin ang fit_tranform mula sa nilikha na object na min_max_Scalar at ipinasa ang CSV file doon.

Sa cell number [109] : Nakukuha namin ang na-normalize na mga resulta na nasa pagitan ng 0 at 2.

Paraan 6: Gamit ang maximum na absolute scaling

Maaari din nating gawing normal ang data gamit ang pandas. Ang mga tampok na ito ay napakapopular din sa gawing normal ang data. Ginagawa ng maximum na absolute scaling na gawing normal ang mga halaga sa pagitan ng 0 at 1. Naglalapat kami dito .max () at .abs () tulad ng ipinakita sa ibaba:

Sa cell number [110] : Nag-import kami ng silid-aklatan ng pandas.

Sa cell number [111] : Lumikha kami ng isang dummy dataframe at nai-print ang dataframe na iyon.

Sa cell number [113] : Tinatawagan namin ang bawat haligi at pagkatapos ay hinati ang mga halagang haligi sa .max () at .abs ().

Sa cell number [114] : Nai-print namin ang resulta, at mula sa resulta, kinukumpirma namin na ang aming data ay normalize sa pagitan ng 0 at 1.

Paraan 7: Gamit ang pamamaraang z-score

Ang susunod na pamamaraan na tatalakayin namin ay ang pamamaraang z-score. Ang pamamaraang ito ay nagko-convert ng impormasyon sa pamamahagi. Kinakalkula ng pamamaraang ito ang ibig sabihin ng bawat haligi at pagkatapos ay nagbabawas mula sa bawat haligi at, sa wakas, hinahati ito sa karaniwang paglihis. Normalisa nito ang data sa pagitan ng -1 at 1.

Sa cell number [115] : Lumikha kami ng isang dummy dataframe at nai-print ang dataframe na iyon.

Sa cell number [117] : Kinakalkula namin ang ibig sabihin ng haligi at ibawas ito mula sa haligi. Pagkatapos hatiin namin ang halagang haligi sa karaniwang paglihis.

Sa cell number [118] : Nai-print namin ang na-normalize na data sa pagitan ng -1 at 1.

Konklusyon: Nakita namin ang iba't ibang mga uri ng na-normalize na pamamaraan. Kabilang sa mga ito, ang sklearn ay napakatanyag dahil sa pagsuporta sa pag-aaral ng makina. Ngunit depende iyon sa mga kinakailangan ng gumagamit. Minsan ang tampok na pandas upang gawing normal ang data ay sapat. Hindi namin masasabi na mayroon lamang sa itaas na gawing normal ang mga pamamaraan. Mayroong maraming mga pamamaraan upang gawin ang normalisasyon ng data na nakasalalay din sa iyong uri ng data tulad ng mga imahe, numero, teksto, atbp. Nakatuon kami sa numerong data na ito at sa Python.