الباندا: إنشاء عمود تاريخ من السنة والشهر واليوم


يمكنك استخدام بناء الجملة الأساسي التالي لإنشاء عمود تاريخ من أعمدة السنة والشهر واليوم في Pandas DataFrame:

 df[' date '] = pd. to_datetime (dict(year=df. year , month=df. month , day=df. day ))

يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.

مثال: قم بإنشاء عمود تاريخ من السنة والشهر واليوم في Pandas

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' year ': [2021, 2022, 2022, 2022, 2022, 2022, 2022, 2022],
                   ' month ': [7, 1, 1, 2, 5, 10, 11, 12],
                   ' day ': [4, 15, 25, 27, 27, 24, 10, 18],
                   ' sales ': [140, 200, 250, 180, 130, 87, 90, 95]})

#view DataFrame
print (df)

   year month day sales
0 2021 7 4 140
1 2022 1 15 200
2 2022 1 25 250
3 2022 2 27 180
4 2022 5 27 130
5 2022 10 24 87
6 2022 11 10 90
7 2022 12 18 95

يمكننا استخدام الصيغة التالية لإنشاء عمود جديد يسمى التاريخ الذي يجمع قيم أعمدة السنة والشهر واليوم في DataFrame لإنشاء تاريخ لكل صف:

 #create date columns from year, month, and day columns
df[' date '] = pd. to_datetime (dict(year=df. year , month=df. month , day=df. day ))

#view updated DataFrame
print (df)

   year month day sales date
0 2021 7 4 140 2021-07-04
1 2022 1 15 200 2022-01-15
2 2022 1 25 250 2022-01-25
3 2022 2 27 180 2022-02-27
4 2022 5 27 130 2022-05-27
5 2022 10 24 87 2022-10-24
6 2022 11 10 90 2022-11-10
7 2022 12 18 95 2022-12-18

لاحظ أن عمود التاريخ يحتوي على قيم تاريخ بناءً على القيم الموجودة في أعمدة السنة والشهر واليوم في كل صف.

إذا استخدمنا df.info() للحصول على معلومات حول كل عمود في DataFrame، فيمكننا أن نرى أن عمود التاريخ الجديد يحتوي على نوع بيانات datetime64 :

 #display information about each column in DataFrame
df. info ()

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 8 entries, 0 to 7
Data columns (total 5 columns):
 # Column Non-Null Count Dtype         
--- ------ -------------- -----         
 0 year 8 non-null int64         
 1 month 8 non-null int64         
 2 day 8 non-null int64         
 3 dirty 8 non-null int64         
 4 date 8 non-null datetime64[ns]
dtypes: datetime64[ns](1), int64(4)
memory usage: 388.0 bytes

مصادر إضافية

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

كيفية إضافة وطرح أيام من تاريخ في الباندا
كيفية تحديد الصفوف بين تاريخين في الباندا
كيفية حساب الفرق بين تاريخين في الباندا

Add a Comment

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