تم حلها: فرق تاريخ الباندا بالأشهر

Pandas هي مكتبة Python شهيرة تسهل معالجة البيانات وتحليلها ، وتقدم مجموعة واسعة من الوظائف للتعامل مع التواريخ والأوقات. إحدى حالات الاستخدام الشائعة في تحليل البيانات هي حساب الفرق بين التواريخ بالأشهر. في هذه المقالة ، سوف نستكشف طريقة لتحقيق ذلك باستخدام Pandas ، جنبًا إلى جنب مع شرح تفصيلي للكود. علاوة على ذلك ، سنناقش بعض المكتبات والوظائف الأخرى ذات الصلة لتعزيز فهمنا للمشكلة.

تمثل معالجة بيانات التاريخ والوقت دائمًا تحديًا لمحللي البيانات والمطورين. تجعل مكتبة Python Pandas هذه المهمة أسهل بكثير من خلال توفير مجموعة قوية ومتعددة الاستخدامات من الوظائف لمعالجة التواريخ والأوقات ودلتا الوقت. في هذه المقالة ، سنشرح كيفية حساب الفرق بين تاريخين في الأشهر باستخدام Pandas.

حل للمشكلة

import pandas as pd

def date_diff_in_months(date1, date2):
    return (date2.year - date1.year) * 12 + (date2.month - date1.month)

date1 = pd.to_datetime("2021-01-01")
date2 = pd.to_datetime("2022-05-01")

months_diff = date_diff_in_months(date1, date2)
print(months_diff)

شرح المدونة

1. أولاً ، نقوم باستيراد مكتبة Pandas كـ pd. يتيح لنا ذلك الاستفادة من مجموعة وظائف Pandas القوية للعمل مع التواريخ.

2. نحدد بعد ذلك دالة تسمى "date_diff_in_months" تأخذ وسيطتين ، "date1" و "date2". ستُرجع هذه الوظيفة عدد الأشهر بين تاريخي الإدخال.

3. داخل الدالة ، نحسب الفرق بالأشهر بطرح مكونات السنة والشهر لـ "date1" من مكوناتها الخاصة في "date2" ، ثم نعدل نتيجة الفرق في السنوات.

4. بعد ذلك ، نقوم بإنشاء كائنين للطابع الزمني لـ Pandas ، "date1" و "date2" ، باستخدام وظيفة "pd.to_datetime". يمثل هذان تاريخان نموذجيان لحالة الاختبار الخاصة بنا.

5. نقوم باستدعاء الدالة "date_diff_in_months" مع "date1" و "date2" ، مع تخزين النتيجة في المتغير "months_diff".

6. أخيرًا ، نقوم بطباعة متغير "أشهر_الفرق" ، والذي سيعرض عدد الأشهر بين تاريخي الإدخال.

الباندا والطوابع الزمنية

تعد كائنات الطابع الزمني في Pandas متعددة الاستخدامات بشكل لا يصدق ، مما يسمح بمعالجة ومقارنة التاريخ والوقت بسلاسة. من خلال استدعاء وظيفة `pd.to_datetime` ، يمكننا تحويل مجموعة كبيرة من تنسيقات التاريخ إلى كائنات Pandas Timestamp. يمكن بعد ذلك مقارنة هذه الكائنات ومعالجتها واستخدامها بسهولة لإجراء عمليات حسابية معقدة. في حلنا ، نستفيد من قوة كائنات الطابع الزمني لحساب الفرق بين تاريخين في الأشهر.

المكتبات والوظائف البديلة

  • نمباي: مكتبة Python الشهيرة الأخرى للتعامل مع التواريخ والأوقات هي Numpy. مع كائنات `numpy.datetime64` ، يوفر Numpy وظائف مماثلة لكائنات الطابع الزمني لـ Pandas. يوفر Numpy أيضًا وظائف مثل `numpy.timedelta64` لحساب الاختلافات بين التواريخ.
  • داتوتيل: مكتبة dateutil هي أداة قوية لتحليل ومعالجة التواريخ في Python. يوفر مجموعة واسعة من الوظائف والفئات للتعامل مع حساب التاريخ ، بما في ذلك وظيفة `dateutil.relativedelta.relativedelta` ، والتي تعد مفيدة بشكل خاص لحساب الاختلافات في التواريخ من حيث السنوات والأشهر والأيام.

باختصار ، يمكن حساب الفرق بين تاريخين في الأشهر باستخدام Pandas من خلال طريقة بسيطة لكنها فعالة. يمكننا الاعتماد على كائنات Pandas Timestamp ووظيفة مخصصة لأداء هذه المهمة بسهولة. علاوة على ذلك ، تقدم المكتبات البديلة مثل Numpy و dateutil طرقًا بديلة للمساعدة في معالجة مجموعة واسعة من المشكلات المتعلقة بالوقت والوقت.

الوظائف ذات الصلة:

اترك تعليق