الباندا: كيفية تحديد صفوف dataframe حسب الطابع الزمني
يمكنك استخدام بناء الجملة الأساسي التالي لتحديد الصفوف بين طابعين زمنيين في Pandas DataFrame:
df[(df[' tstamp '] > ' 2022-10-25 04:30:00 ') & (df[' tstamp '] < ' 2022-10-27 11:00:00 ')]
يفترض بناء الجملة هذا أن tstamp لديه بالفعل نوع تاريخ/وقت.
إذا لم يكن الأمر كذلك، فيمكنك استخدام بناء الجملة التالي لتحويله إلى عمود التاريخ والوقت:
df[' tstamp '] = pd. to_datetime (df[' tstamp '])
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: حدد صفوف Pandas DataFrame حسب الطابع الزمني
لنفترض أن لدينا DataFrame الباندا التالية التي تحتوي على معلومات حول المبيعات في متجر بيع بالتجزئة:
import pandas as pd #createDataFrame df = pd. DataFrame ({' tstamp ': ['2022-10-25 04:00:00', '2022-10-25 11:55:12', '2022-10-26 02:00:00', '2022-10-27 10:30:00', '2022-10-27 14:25:00', '2022-10-28 01:15:27'], ' sales ': [18, 22, 19, 14, 14, 11]}) #view DataFrame print (df) tstamp sales 0 2022-10-25 04:00:00 18 1 2022-10-25 11:55:12 22 2 2022-10-26 02:00:00 19 3 2022-10-27 10:30:00 14 4 2022-10-27 14:25:00 14 5 2022-10-28 01:15:27 11
لنفترض أننا نريد تحديد الصفوف الموجودة بين الطابعين الزمنيين التاليين فقط:
- 2022-10-25 04:30:00
- 2022-10-27 11:00:00
يمكننا استخدام بناء الجملة التالي للقيام بذلك:
#convert timestamp column to datetime dtype df[' tstamp '] = pd. to_datetime (df[' tstamp ']) #select rows between two timestamps df[(df[' tstamp '] > ' 2022-10-25 04:30:00 ') & (df[' tstamp '] < ' 2022-10-27 11:00:00 ')] tstamp sales 1 2022-10-25 11:55:12 22 2 2022-10-26 02:00:00 19 3 2022-10-27 10:30:00 14
لاحظ أنه تم تحديد الأسطر الموجودة بين الطابعين الزمنيين اللذين حددناهما فقط.
لاحظ أيضًا أنه يمكنك تحديد الصفوف حسب الطابع الزمني باستخدام قيمة تاريخ فقط.
على سبيل المثال، يمكننا استخدام الكود التالي لتحديد جميع الصفوف ذات الطابع الزمني الأكبر من 27-10-2022:
#convert timestamp column to datetime dtype df[' tstamp '] = pd. to_datetime (df[' tstamp ']) #select rows with timestamp after 2022-10-27 df[df[' tstamp '] > ' 2022-10-27 '] tstamp sales 3 2022-10-27 10:30:00 14 4 2022-10-27 14:25:00 14 5 2022-10-28 01:15:27 11
لاحظ أنه تم تحديد الصفوف التي تكون قيمتها في عمود tsamp بعد 27-10-2022 فقط.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في الباندا:
كيفية تحويل DateTime إلى تاريخ في Pandas
كيفية تحويل الأعمدة إلى DateTime في Pandas
كيفية فرز Pandas DataFrame حسب التاريخ