كيفية إنشاء المتغيرات الفئوية في الباندا (مع أمثلة)


يمكنك استخدام أي من الطرق التالية لإنشاء متغير فئوي في الباندا:

الطريقة الأولى: إنشاء متغير فئوي من البداية

 df[' cat_variable '] = [' A ', ' B ', ' C ', ' D ']

الطريقة الثانية: إنشاء متغير فئوي من متغير رقمي موجود

 df[' cat_variable '] = pd. cut (df[' numeric_variable '],
                            bins=[ 0,15,25 ,float(' Inf ') ] ,
                            labels=[' Bad ', ' OK ', ' Good '])

توضح الأمثلة التالية كيفية استخدام كل طريقة عمليًا.

المثال 1: إنشاء متغير فئوي من الصفر

يوضح التعليمة البرمجية التالية كيفية إنشاء DataFrame الباندا مع متغير فئوي يسمى الفريق ومتغير رقمي يسمى النقاط :

 import pandas as pd

#create DataFrame with one categorical variable and one numeric variable
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [12, 15, 19, 22, 24, 25, 26, 30]})

#view DataFrame
print (df)

  team points
0 to 12
1 B 15
2 C 19
3 D 22
4 E 24
5 F 25
6 G 26
7:30 a.m.

#view data type of each column in DataFrame
print ( df.dtypes )

team object
int64 dots
dtype:object

باستخدام df.dtypes يمكننا رؤية نوع البيانات لكل متغير في DataFrame.

نستطيع ان نرى:

  • متغير الفريق هو كائن .
  • متغير النقاط هو عدد صحيح .

في بايثون، الكائن يعادل حرفًا أو متغيرًا “فئويًا”. وبالتالي، فإن متغير الفريق هو متغير قاطع.

المثال 2: إنشاء متغير فئوي من متغير رقمي موجود

يوضح التعليمة البرمجية التالية كيفية إنشاء متغير فئوي يسمى الحالة من المتغير الرقمي الموجود الذي يسمى النقاط في DataFrame:

 import pandas as pd

#create DataFrame with one categorical variable and one numeric variable
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [12, 15, 19, 22, 24, 25, 26, 30]})

#create categorical variable 'status' based on existing numerical 'points' variable
df[' status '] = pd. cut (df[' points '],
                      bins=[ 0,15,25 ,float(' Inf ') ] ,
                      labels=[' Bad ', ' OK ', ' Good '])

#view updated DataFrame
print (df)

  team points status
0 To 12 Bad
1 B 15 Bad
2 C 19 OK
3 D 22 OK
4 E 24 OK
5 F 25 OK
6 G 26 Good
7:30 a.m. Good

باستخدام الدالة Cut() ، أنشأنا متغيرًا فئويًا جديدًا يسمى الحالة والذي يأخذ القيم التالية:

  • سيئ ” إذا كانت القيمة الموجودة في عمود النقاط أقل من أو تساوي 15.
  • بخلاف ذلك، ” موافق ” إذا كانت القيمة في عمود النقاط أقل من أو تساوي 25.
  • وإلا “” جيد “”

لاحظ أنه عند استخدام الدالة Cut() ، يجب أن يكون عدد الملصقات أقل من عدد الصناديق بدرجة واحدة .

في مثالنا، استخدمنا أربع قيم للمربعات لتحديد حواف المربعات وثلاث قيم للتسميات لتحديد التسميات التي سيتم استخدامها للمتغير الفئوي.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ مهام الباندا الشائعة الأخرى:

كيفية إنشاء متغيرات وهمية في الباندا
كيفية تحويل متغير قاطع إلى رقمي في Pandas
كيفية تحويل القيم المنطقية إلى قيم صحيحة في الباندا

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *