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


يمكن أن تأخذ أعمدة Pandas DataFrame أحد الأنواع التالية:

  • كائن (سلاسل)
  • int64 (الأعداد الصحيحة)
  • float64 (القيم الرقمية مع الكسور العشرية)
  • منطقي (قيم صحيحة أو خاطئة)
  • datetime64 (التواريخ والأوقات)

أسهل طريقة لتحويل عمود من نوع بيانات إلى آخر هي استخدام الدالة astype() .

يمكنك استخدام الطرق التالية مع الدالة astype() لتحويل الأعمدة من نوع بيانات إلى آخر:

الأسلوب 1: تحويل عمود إلى نوع بيانات آخر

 df[' col1 '] = df[' col1 ']. astype (' int64 ')

الطريقة الثانية: تحويل أعمدة متعددة إلى نوع بيانات آخر

 df[[' col1 ', ' col2 ']] = df[[' col1 ', ' col2 ']]. astype (' int64 ')

الطريقة الثالثة: تحويل كافة الأعمدة إلى نوع بيانات آخر

 df = df. astype (' int64 ')

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' ID ': ['1', '2', '3', '4', '5', '6'],
                   ' tenure ': [12.443, 15.8, 16.009, 5.06, 11.075, 12.9546],
                   ' sales ': [5, 7, 7, 9, 12, 9]})

#view DataFrame
print (df)

  ID tenure sales
0 1 12.4430 5
1 2 15.8000 7
2 3 16.0090 7
3 4 5.0600 9
4 5 11.0750 12
5 6 12.9546 9

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

object ID
tenure float64
dirty int64
dtype:object

مثال 1: تحويل عمود إلى نوع بيانات آخر

يوضح التعليمة البرمجية التالية كيفية استخدام الدالة astype() لتحويل عمود الحيازة من عدد عشري إلى عدد صحيح:

 #convert tenure column to int64
df[' tenure '] = df[' tenure ']. astype (' int64 ')

#view updated data type for each column
print ( df.dtypes )

object ID
tenure int64
dirty int64
dtype:object

لاحظ أنه تم تحويل عمود الحيازة إلى int64 بينما احتفظت جميع الأعمدة الأخرى بأنواع بياناتها الأصلية.

المثال 2: تحويل أعمدة متعددة إلى نوع بيانات آخر

يوضح التعليمة البرمجية التالية كيفية استخدام الدالة astype() لتحويل أعمدة المعرف والحيازة إلى أعداد صحيحة:

 #convert ID and tenure columns to int64
df[[' ID ', ' tenure ']] = df[[' ID ', ' tenure ']]. astype (' int64 ')

#view updated data type for each column
print ( df.dtypes )

ID int64
tenure int64
dirty int64
dtype:object

لاحظ أنه تم تحويل أعمدة المعرف والحيازة إلى int64.

المثال 3: تحويل كافة الأعمدة إلى نوع بيانات آخر

يوضح التعليمة البرمجية التالية كيفية استخدام الدالة astype() لتحويل كافة الأعمدة في DataFrame إلى نوع بيانات صحيح:

 #convert all columns to int64
df = df. astype (' int64 ')

#view updated data type for each column
print ( df.dtypes )

ID int64
tenure int64
dirty int64
dtype:object

لاحظ أنه تم تحويل كافة الأعمدة إلى int64.

ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة pandas astype() هنا .

مصادر إضافية

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

كيفية تحويل أعمدة Pandas DataFrame إلى سلاسل
كيفية تحويل الطابع الزمني إلى التاريخ/الوقت في Pandas
كيفية تحويل DateTime إلى تاريخ في Pandas
كيفية تحويل السلاسل إلى تعويم في الباندا

Add a Comment

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