تفاصيل العمل

1. جلب البيانات المرن (Flexible Data Loading)

واجهة اختيار الملفات: استخدام مكتبة tkinter.filedialog لإتاحة نافذة تفاعلية للمستخدم لتحديد مكان ملف البيانات من الجهاز بسهولة.

دعم صيغ مختلفة: الدالة load_dataset تتعامل مع صيغ ملفات متعددة مثل CSV بترميزات مختلفة (UTF-8 أو latin1) وملفات Excel (.xls, .xlsx).

2. التنظيف ومعالجة المشاكل (Data Cleaning Pipeline)

إزالة التكرارات (remove_duplicate): حذف السجلات المكررة حسابياً وإظهار عدد الصفوف التي تم حذفها بوضوح في الشاشة.

التعامل مع القيم المفقودة (handle_missing_data):

للأعمدة الرقمية: تعبئة القيم المفقودة باستخدام الوسيط الحسابي (Median).

للأعمدة النصية/الفئوية: تعبئة القيم المفقودة باستخدام المنوال (Mode).

3. هندسة الخصائص والتفاعل مع المستخدم (Interactive Feature Engineering)

تحتوي الدالة add_new_column على قائمة خيارات تفاعلية من خلال موجه الأوامر (Terminal) تتيح للمستخدم إضافة أعمدة جديدة مشتقة وحسابية للبيانات:

هامش الربح (Profit Margin %): حساب نسبة الربح مقارنة بالمبيعات.

وقت الشحن (Shipping Time): حساب الفرق بالأيام بين تاريخ الطلب وتاريخ الشحن (Ship Date - Order Date).

تصنيف أداء المبيعات (Sales Performance Category): تقسيم المبيعات إلى فئات (Low, Medium, High) باستخدام pd.qcut.

خصومات المبيعات (Total Discounts): حساب القيمة المخصومة ونسبتها.

اسم يوم الطلب (Order Day Name): استخراج اسم اليوم الذي تم فيه الطلب (مثل Monday, Tuesday).

الربع السنوي (Quarterly Performance): تحديد الربع السنوي للطلب (Q1, Q2, ...).

4. التحليل البياني والتجميع (Data Aggregation & Visualization)

في الجزء الأخير من السكربت، يتم تجميع البيانات (Grouping) وإنشاء 4 رسوم بيانية باستخدام مكتبة matplotlib.pyplot لتلخيص الأداء التجاري:

إجمالي الأرباح حسب الولاية/المنطقة (Total profit by states): رسم بياني شريطي أفقي (barh).

إجمالي الأرباح حسب الفئة (Total profit by category): رسم بياني شريطي (bar).

توزيع المبيعات حسب أيام الأسبوع (Sales distribution by day).

الأرباح حسب الربع السنوي (Profit by quarter).

ملفات مرفقة

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
تاريخ الإضافة
تاريخ الإنجاز
المهارات