Temporian هي مكتبة للمعالجة المسبقة الآمنة والبسيطة والفعالة وهندسة الميزات للبيانات المؤقتة في Python. يدعم Temporian السلاسل الزمنية متعددة المتغيرات، والتسلسلات الزمنية متعددة المتغيرات، وسجلات الأحداث، وتدفقات الأحداث عبر المصادر.
Temporian هو بالنسبة للبيانات المؤقتة ما هو Pandas بالنسبة للبيانات الجدولية.
يدعم معظم أنواع البيانات المؤقتة ؟: يتعامل مع كل من البيانات ذات العينات الموحدة وغير المنتظمة، والبيانات أحادية المتغير ومتعددة المتغيرات، والبيانات المسطحة ومتعددة الفهارس، والأحداث غير المتزامنة أحادية المصدر ومتعددة المصادر.
مُحسّن للبيانات المؤقتة : يتم تنفيذ الحساب الأساسي لـ Temporian في لغة C++ ويتم تحسينه للبيانات المؤقتة. يمكن أن تكون Temporian أسرع بما يزيد عن 1000 مرة من مكتبات معالجة البيانات الجاهزة عند التشغيل على البيانات المؤقتة.
سهولة الاندماج في النظام البيئي الحالي لتعلم الآلة : لا يقوم Temporian بإجراء أي تدريب على نموذج تعلم الآلة - وبدلاً من ذلك يتكامل بسلاسة مع أي مكتبة تعلم الآلة، مثل PyTorch أو Scikit-Learn أو Jax أو TensorFlow أو XGBoost أو Yggdrasil Decision Forests.
يمنع التسرب غير المرغوب فيه في المستقبل ؟: ما لم يتم تحديد ذلك صراحةً باستخدام tp.leak
، لا يمكن أن يعتمد حساب الميزة على البيانات المستقبلية، وبالتالي منع التسرب غير المرغوب فيه والذي يصعب تصحيحه والمكلف في المستقبل.
تثبيت Temporian من PyPI مع pip
:
pip install temporian -U
يتوفر Temporian حاليًا لنظامي التشغيل Linux وMacOS (ARM وIntel). دعم Windows قيد التطوير.
ضع في اعتبارك سجلات البيع التي تحتوي على الطابع timestamp
store
revenue
المبيعات الفردية.
$ cat sales.csv
timestamp,store,revenue
2023-12-04 21:21:05,STORE_31,5071
2023-11-08 17:14:38,STORE_4,1571
2023-11-29 21:44:46,STORE_49,6101
2023-12-20 18:17:14,STORE_18,4499
2023-12-15 10:55:09,STORE_2,6666
...
هدفنا هو حساب مجموع الإيرادات لكل متجر في الساعة 11 مساءً كل يوم من أيام الأسبوع (باستثناء عطلات نهاية الأسبوع).
أولاً، نقوم بتحميل البيانات وسرد أيام العمل.
import temporian as tp
# Load sale transactions
sales = tp . from_csv ( "sales.csv" )
# Index sales per store
sales_per_store = sales . add_index ( "store" )
# List work days
days = sales_per_store . tick_calendar ( hour = 22 )
work_days = ( days . calendar_day_of_week () <= 5 ). filter ()
work_days . plot ( max_num_plots = 1 )
ثم نقوم بجمع الإيرادات اليومية لكل يوم عمل وكل متجر.
# Aggregate revenue per store and per work day
daily_revenue = sales_per_store [ "revenue" ]. moving_sum ( tp . duration . days ( 1 ), sampling = work_days ). rename ( "daily_revenue" )
# Plot the results
daily_revenue . plot ( max_num_plots = 3 )
أخيرًا، يمكننا تصدير النتيجة على هيئة Pandas DataFrame لمزيد من المعالجة أو للاستهلاك بواسطة مكتبات أخرى.
tp . to_pandas ( daily_revenue )
تحقق من البرنامج التعليمي للبدء لمعرفة المزيد!
يجب على المستخدمين الجدد الرجوع إلى دليل البدء، الذي يقدم نظرة عامة سريعة على المفاهيم والعمليات الأساسية لـ Temporian.
بعد ذلك، قم بزيارة دليل المستخدم للتعمق في المفاهيم والمشغلين والاتفاقيات والممارسات الرئيسية لـ Temporian. للحصول على تجربة تعليمية عملية، يمكنك العمل من خلال البرامج التعليمية أو الرجوع إلى مرجع واجهة برمجة التطبيقات (API).
إذا كنت بحاجة إلى مساعدة، أو لديك سؤال، أو تريد المساهمة، أو تريد فقط أن تكون جزءًا من مجتمع Temporian، فنحن نشجعك على الانضمام إلى خادم Discord الخاص بنا! ؟؟
الوثائق متاحة على temporian.readthedocs.io. دليل البدء هو أفضل طريقة للبدء.
المساهمات في Temporian هي موضع ترحيب! راجع دليل المساهمة للبدء.
تم تطوير Temporian بالتعاون بين Google وTryolabs.