Pandas Qcut

Pandas Qcut



„„Python“ съдържа много библиотеки и когато искаме да анализираме или манипулираме данни, ние използваме тези библиотеки на „Python“, а „pandas“ също е неговата библиотека. Библиотеката „pandas“ се използва в областта на науките за данни, а също така се използва в дейности за машинно обучение. “pandas” DataFrame ни помага при запазването на данните. В „pandas“, когато искаме групиране на данни, тогава използваме метода „qcut()“. Методът “qcut()” се използва за преобразуване на непрекъснати характеристики в категорични. Можем да добавяме различни типове параметри в този метод “qcut()” за получаване на различни типове резултати. Този урок е изцяло за метода “qcut()” и ние ще обясним в пълни подробности метода “qcut()” тук. Ще ви обясним как правим групиране на данни с помощта на функцията „qcut()“ в „pandas“ в този урок.“

Пример # 01

Ще приложим метода „qcut()“ в тези кодове и ще направим тези кодове в приложението „Spyder“. Когато трябва да работим с „pandas“, можем да имаме достъп до неговите функции само когато импортираме библиотеката „pandas“ в нашите кодове. Първо поставяме „импортиране“ и след това пишем „панди като pd“. Сега трябва да приложим метода “qcut()”, така че за това създаваме DataFrame тук. Конструираме „Random_df“, съдържащ „R_ID, R_name и R_age“ като негови колони, а също и в „R_ID“, поставяме „R_17, R_21, R_24, R_29, R_31, R_34, R_44, R_46, R_50, R_51, R_55, R_61, R_73 и R_81”. След това добавяме „Теодор, Теди, Ноа, Лео, Айви, Хенри, Фреди, Евелин, Ава, Уилоу, Тео, Оскар, Джейкъб и Харпър“ в колоната „R_name“. След това вмъкваме „21, 33, 12, 43, 22, 7, 21, 51, 72, 19, 10, 9, 37 и 40“ в колоната „R_age“. Сега използваме „print()“, който съдържа „Random_df“, и това ще помогне при изобразяването на „Random_df“ DataFrame. Току-що създадохме DataFrame и все още не прилагаме метода „qcut()“.








Иконата „Изпълни“ ни помага при изпълнението на кодовете. Когато натиснем тази икона „run“, тогава резултатът от този код се показва на терминала на приложението „Spyder“. „Random_df“ DataFarme е показан като резултат от кода, който сме написали в този пример. Сега ще приложим метода “qcut()” и ще покажем неговия резултат.




Ние събираме данните тук. Обединяваме колоната „R_age“ и поставяме метода „pd.qcut()“, който е методът на „pandas“, който помага при групирането на данни. В този метод вмъкваме името на DataFrame, а също и името на колоната, към която искаме да приложим този метод „qcut()“. Също така задаваме стойността на „q“ на „5“ и тя се използва за рязане на данните от колоната „R_age“ на пет равни квантила. Добавяме метода „qcut()“ в „print()“, така че той също ще показва данните за групиране на терминала.




Тук се показват данните след групиране и нарязва „R_age“ на пет квантила. Той също така показва категориите, в които са групирани данните от колоната „R_age“. Категориалната серия представлява кошчетата „R_age“.






Можем също да коригираме етикета за тези кошчета. Добавяме тези етикети за контейнери, за да ги направим лесни за тълкуване. Добавяме колона „R_age_qcut“ към „Random_df“, в която добавяме етикетите на тези контейнери. Ние отново използваме метода “pd.qcut()” за етикетирането им. Добавяме към него етикетите, които са „малко, не толкова малко, посредствено, високо и най-високо“. След това отново поставяме „Random_df“ в „print()“.


Всички контейнери са етикетирани и представени в този резултат. Колоната „R_age_qcut“ се показва в тази DataFrame, в която са показани етикетирани контейнери.



Пример # 02

За да създадем DataFrame, първо добавяме „оценки“, които са „3, 6, 8, 7, 2, 5, 1, 9, 4, 7 и 8“. След това добавяме имена на ученици в „студенти“, които са „Питър, Бромли, Джеймс, Дейвид, Съюзници, Джон, Джеймс, Самуел, Уилям, Хауърд и Александър“. След това генерираме „Grades_df“, където сме добавили метода „pd.DataFrame()“, и в този метод поставяме „Std_name“, което ще се появи като име на колона, и присвояваме стойности на „students“ на това. След това задаваме „Students_grades“ като име на колона на DataFrame и също присвояваме „grades“ тук, което създадохме по-горе. След това имаме “print()”, в който добавяме “Grades_df” за печат.


DataFrame, съдържащ две колони, се показва в резултата от този код. Сега ще приложим метода „qcut()“ към колоната „Students_grades“ за групиране на данните от стойностите на тази колона.


Добавяме нова колона „оценка“ тук, в която сме приложили „pd.qcut()“ към колоната „Students_grades“ и също така сме използвали „4“ за стойността на „q“, така че ще намали данните в четири равни квантила. След това уточняваме тези квантили тук, като поставяме стойности в „q“, които са „0, .4, .8 и 1“. След това показваме и това. Сега ние етикетираме тези групирани данни и етикетите, които добавяме тук, са „D, C, A и B“ и също се съхраняват в колоната „оценка“.


Тук данните след групиране се показват тук в колоната „оценка“ и разрязват данните от колоната „Студенти_оценки“ на четири равни квантила.


DataFrame, който получаваме след прилагане на метода „qcut()“ и указване на квантилите, се показва в този резултат.


Сега, след добавяне на етикетите към тези контейнери, те също се изобразяват в този резултат в колоната „оценка“ и можете да видите, че присвоява етикетите според стойностите на контейнерите.

Пример # 03

Можем също да приложим метода “qcut()” към данните от CSV файла. За целта първо четем данните от CSV файла с помощта на метода „read_csv()“. Ние четем данните от файла „office2.csv“ и след това данните от този файл се поставят в „Office_df“. Този метод ще конвертира данните от файла „office2“ в DataFrame и ще ги запише в „Office_df“. След това показваме и тези данни, като поставяме „Office_df“ в „print()“. След това добавяме нова колона, наречена „Units_qcut“, към която прилагаме функцията „pd.qcut()“ към колоната „Units“.

Освен това задаваме стойността на променливата „q“ на „5“, което ще раздели данните на пет равни квантила. Данните, след нарязване на 5 равни квантила, се съхраняват в колоната „Units_qcut“ и тази колона също се добавя към „Office_df“, а „Office_df“ се изобразява отново тук с помощта на „print()“. Сега етикетираме тези групирани данни, като добавяме етикетите в метода „qcut()“, които са „Unit 1, Unit 2, Unit 3, Unit 4 и Unit 5“ и ги съхраняваме също в колоната „Labels“ . Ние също изобразяваме този DataFrame, в който е добавена колоната „Етикети“.


Данните, които получаваме след прочитане на файла „office2.csv“, се изобразяват тук под формата на DataFrame. След това се добавя колоната „Units_qcut“, в която се показват групираните стойности на колоната „Units“. След това се добавя и колоната „Етикети“, която присвоява етикетите на тези групирани стойности. Всичко това се прави с помощта на метода “qcut()” в “pandas”.

Заключение

Ние обяснихме метода “qcut()” подробно в този урок, който помага при групирането на данните в “pandas”. Обсъдихме, че данните се групират според стойността на квантила „q“, която сме добавили в метода „qcut()“, а също така коригирахме етикетите към тези групирани данни. Изследвахме метода „qcut()“ и приложихме този метод към колоните на DataFrame, а също така приложихме този метод „qcut()“ към данните на CSV файла след прочитане на CSV файловете. Представихме резултата от всички кодове в този урок, за да обясним ясно и покажем резултата от метода „qcut()“.