Arabic:تحليل البيانات باستخدام بايثون

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

من المهم أن تنظر إلى التحليل بوصفه سلسلة قرارات موثقة، لا سلسلة أوامر فقط. كل خطوة تنظيف أو استبعاد أو تعويض لقيمة مفقودة قد تغيّر النتيجة، ولذلك يجب أن تعرف لماذا أجريتها وأن تترك أثرًا واضحًا لها في الدفتر أو التقرير.
أهداف التعلم
بنهاية الدورة ستكون قادرًا على تنفيذ المهام الآتية في سياق مهني:
- استيراد ملفات CSV إلى إطار بيانات وفحص البنية والأنواع والقيم المفقودة.
- تنظيف البيانات من التكرارات والمشكلات الشائعة مع توثيق القرارات.
- تحويل الأعمدة النصية والرقمية والزمنية إلى أنواع مناسبة للتحليل.
- إنشاء مؤشرات محسوبة واستخدام التصفية والفرز والتجميع.
- استخدام groupby وagg والجداول المحورية للإجابة عن أسئلة عمل واضحة.
- اختيار رسم مناسب للمقارنة أو الاتجاه أو التوزيع أو العلاقة بين متغيرين.
- بناء دفتر Jupyter منظم وقابل لإعادة التشغيل من البداية إلى النهاية.
- حفظ البيانات النظيفة والملخصات والرسوم مع فحوص جودة قابلة للتكرار.
بيئة العمل وسير التحليل المهني
دفتر Jupyter مناسب للتحليل الاستكشافي لأنه يجمع الشرح والكود والنتائج في وثيقة واحدة قابلة للتنفيذ. لكن الدفتر الجيد ليس مجرد سجل عشوائي للتجارب. اجعله يروي مسارًا واضحًا: سؤال العمل، مصدر البيانات، فحوص الجودة، التنظيف، التحليل، التصوير، الاستنتاجات، ثم حفظ المخرجات.

رتّب مشروعك بحيث تبقى البيانات الخام كما استلمتها، وتذهب النسخ المنظفة والنتائج إلى مجلدات مستقلة. مثال عملي للبنية:
مشروع_التحليل/ ├── بيانات/ │ ├── خام/ │ └── معالجة/ ├── دفاتر/ ├── رسوم/ └── تقارير/
استخدم مسارات نسبية بدل المسارات المرتبطة بجهاز شخص واحد، ولا تضع كلمات مرور أو مفاتيح وصول داخل الدفتر. إذا كانت البيانات تحتوي على معلومات شخصية أو سرية، فطبّق قواعد مؤسستك بشأن الوصول والإخفاء والاحتفاظ، واستخدم بيانات مصغرة أو مجهّلة عند التدريب والعرض.
from pathlib import Path
import sys
import pandas as pd
import matplotlib as mpl
جذر_المشروع = Path.cwd()
مجلد_البيانات = جذر_المشروع / "بيانات"
مجلد_الرسوم = جذر_المشروع / "رسوم"
مجلد_الرسوم.mkdir(exist_ok=True)
print("نسخة بايثون:", sys.version.split()[0])
print("نسخة باندا:", pd.__version__)
print("نسخة ماتبلوتليب:", mpl.__version__)تسجيل إصدارات الأدوات خطوة صغيرة ذات قيمة كبيرة. عندما تتغير المكتبات بمرور الوقت قد تتغير بعض التفاصيل أو القيم الافتراضية، ولذلك يساعدك سجل البيئة على تفسير الفروق وإعادة بناء بيئة مماثلة.
مجموعة البيانات التدريبية
سنستخدم مثالًا مصغرًا لمبيعات إقليمية. وجود بيانات صغيرة ومفهومة يجعل من السهل رؤية أثر كل خطوة قبل تطبيق الأسلوب نفسه على ملف أكبر. احفظ النص التالي باسم مبيعات.csv داخل مجلد البيانات الخام:
تاريخ,المنطقة,المنتج,الكمية,سعر_الوحدة,الخصم 2026-01-05,الشمال,حاسوب محمول,3,3200,0.05 2026-01-05,الجنوب,شاشة,5,850,0.10 2026-01-06,الشمال,لوحة مفاتيح,8,120,0 2026-01-07,الشرق,طابعة,2,900, 2026-01-07,الشرق,طابعة,2,900, 2026-01-08,الغرب,فأرة,12,75,0.05 2026-01-09,الجنوب,شاشة,4,850,0.10 2026-01-10,الشمال,حاسوب محمول,,3200,0.05
في هذه البيانات تعمّدنا إدخال صف مكرر وقيمتين مفقودتين. الهدف ليس حذف كل نقص بصورة آلية، بل تدريبك على اكتشاف المشكلة ثم اختيار المعالجة التي تتوافق مع معنى العمود وسياق العمل.

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

from pathlib import Path
import pandas as pd
المسار = Path("بيانات") / "خام" / "مبيعات.csv"
البيانات = pd.read_csv(المسار, encoding="utf-8")
print(البيانات.head())
print(البيانات.shape)
print(البيانات.dtypes)
print(البيانات.isna().sum())
البيانات.info()استخدم shape لمعرفة عدد الصفوف والأعمدة، وdtypes لفحص الأنواع، وisna لتحديد مواضع النقص. أما info فتعطيك ملخصًا سريعًا عن الأعمدة والقيم غير المفقودة والأنواع. لا تعتمد على أول خمسة صفوف وحدها؛ فالملفات الكبيرة قد تحتوي على مشكلات لا تظهر في البداية.
يمكنك أيضًا الحصول على ملخص عددي أولي:
print(البيانات.describe(include="all"))الملخص الوصفي مفيد لاكتشاف نطاقات غير معقولة أو فئات نادرة، لكنه لا يغني عن الفحص البصري ولا عن معرفة سياق البيانات.
تنظيف البيانات وتحويل الأنواع
التنظيف المهني يعني جعل البيانات مناسبة للسؤال الذي تريد الإجابة عنه مع الحفاظ على أثر القرار. لا تحذف صفوفًا لمجرد أنها غير مريحة. ابدأ بتحديد المشكلة، ثم افحص أسبابها، ثم قرر هل تحتاج إلى التصحيح أو التعويض أو الاستبعاد أو الرجوع إلى مصدر البيانات.
في المثال التالي نحول التاريخ إلى نوع زمني، ونتأكد من أن الأعمدة الكمية رقمية، ونقيس عدد التكرارات قبل إزالتها:
البيانات.columns = البيانات.columns.str.strip()
البيانات["تاريخ"] = pd.to_datetime(
البيانات["تاريخ"],
errors="coerce"
)
for عمود in ["الكمية", "سعر_الوحدة", "الخصم"]:
البيانات[عمود] = pd.to_numeric(
البيانات[عمود],
errors="coerce"
)
عدد_التكرارات = البيانات.duplicated().sum()
print("عدد الصفوف المكررة:", عدد_التكرارات)بعد أن تتأكد أن الصف المتكرر لا يمثل عملية مستقلة صحيحة، يمكنك إنشاء نسخة بلا تكرار:
البيانات = البيانات.drop_duplicates().copy()بالنسبة إلى الخصم المفقود، قد تكون قاعدة العمل هي أن الفراغ يعني عدم وجود خصم. عندها يمكن تعويضه بصفر. أما الكمية المفقودة فلا يصح افتراض صفر تلقائيًا لأنها قد تعني نقصًا في التسجيل. في مثال التدريب سنستخدم وسيط كمية المنتج عندما يكون متاحًا، ثم نراجع أي قيم بقيت مفقودة:
البيانات["الخصم"] = البيانات["الخصم"].fillna(0)
وسيط_المنتج = البيانات.groupby("المنتج")["الكمية"].transform("median")
البيانات["الكمية"] = البيانات["الكمية"].fillna(وسيط_المنتج)
print(البيانات.isna().sum())هذه طريقة تدريبية وليست قاعدة عامة. في بيانات الموارد البشرية أو المخزون أو السلامة قد يكون التعويض الإحصائي غير مناسب، وقد تحتاج إلى العودة إلى المصدر أو إبقاء القيمة مفقودة مع توضيحها في التحليل.
أنشئ فحوصًا منطقية للقيم. قبل حذف أي سجل مخالف، اعرضه وافهمه:
مشكلات_القيم = البيانات[
البيانات["الكمية"].le(0)
| البيانات["سعر_الوحدة"].le(0)
| البيانات["الخصم"].lt(0)
| البيانات["الخصم"].gt(1)
]
print(مشكلات_القيم)يمكنك بعد المعالجة إضافة اختبارات بسيطة تمنع استمرار التحليل إذا ظهرت مشكلة أساسية:
assert البيانات["تاريخ"].notna().all()
assert البيانات["الكمية"].gt(0).all()
assert البيانات["سعر_الوحدة"].gt(0).all()
assert البيانات["الخصم"].between(0, 1).all()هذه الفحوص لا تثبت أن البيانات كاملة أو صحيحة من الناحية التجارية، لكنها تحوّل بعض قواعد الجودة إلى شروط صريحة قابلة للتكرار.
التحليل والحساب والتجميع
بعد ضبط الأنواع والجودة، ابدأ بإنشاء متغيرات مشتقة تخدم السؤال. إذا كان هدفك فهم قيمة المبيعات بعد الخصم، فأنشئ عمود الإيراد بدل إعادة كتابة الصيغة في أكثر من مكان:
البيانات["الإيراد"] = (
البيانات["الكمية"]
* البيانات["سعر_الوحدة"]
* (1 - البيانات["الخصم"])
)
print(البيانات[["المنطقة", "المنتج", "الإيراد"]])تسمح groupby بتقسيم البيانات إلى مجموعات ثم تطبيق عمليات حسابية عليها. يمكنك مثلًا تلخيص الإيراد وعدد العمليات ومتوسط الإيراد لكل منطقة:
ملخص_المناطق = (
البيانات
.groupby("المنطقة", as_index=False)
.agg(
الإيراد_الإجمالي=("الإيراد", "sum"),
متوسط_الإيراد=("الإيراد", "mean"),
عدد_العمليات=("المنتج", "count")
)
.sort_values("الإيراد_الإجمالي", ascending=False)
)
print(ملخص_المناطق)لا تفسّر المتوسط وحده دون عدد السجلات والتوزيع. منطقة فيها عملية واحدة كبيرة قد تظهر بمتوسط أعلى من منطقة ذات نشاط أكثر انتظامًا. اربط المؤشر بالسياق وعدد الملاحظات.
للتحليل الزمني، أنشئ شهرًا من التاريخ ثم اجمع الإيراد:
البيانات["الشهر"] = البيانات["تاريخ"].dt.to_period("M").astype(str)
ملخص_شهري = (
البيانات
.groupby("الشهر", as_index=False)
.agg(الإيراد_الإجمالي=("الإيراد", "sum"))
)
print(ملخص_شهري)كما يمكنك إنشاء جدول محوري للمقارنة بين المناطق والمنتجات:
جدول_محوري = البيانات.pivot_table(
index="المنطقة",
columns="المنتج",
values="الإيراد",
aggfunc="sum",
fill_value=0
)
print(جدول_محوري)الجدول المحوري مناسب عندما تريد رؤية بعدين تصنيفيين مع مقياس واحد أو أكثر، بينما groupby غالبًا أكثر مرونة عند بناء سلسلة معالجة برمجية.

تصوير البيانات وتفسيرها
الرسم الجيد يجيب عن سؤال محدد. للمقارنة بين فئات استخدم رسمًا عموديًا غالبًا، وللاتجاه عبر الزمن استخدم خطًا، ولشكل التوزيع استخدم مدرجًا تكراريًا أو رسمًا صندوقيًا، وللعلاقة بين متغيرين عدديين استخدم مخططًا مبعثرًا. لا تختَر نوع الرسم لمجرد أنه جذاب.

رسم الإيراد حسب المنطقة:
import matplotlib.pyplot as plt
محور = ملخص_المناطق.plot(
kind="bar",
x="المنطقة",
y="الإيراد_الإجمالي",
legend=False,
color="#2F6BFF",
figsize=(8, 5)
)
محور.set_title("الإيراد الإجمالي حسب المنطقة")
محور.set_xlabel("المنطقة")
محور.set_ylabel("الإيراد")
plt.tight_layout()
plt.show()إذا ظهرت الحروف العربية في بيئتك بصورة غير مناسبة، فتحقق من دعم الخط واتجاه النص في نظام العرض الذي تستخدمه. المهم أن تكون العناوين مفهومة في النسخة النهائية التي ستشاركها.
لرؤية توزيع قيم الإيراد:
البيانات["الإيراد"].plot(
kind="hist",
bins=8,
edgecolor="black",
figsize=(8, 5)
)
plt.title("توزيع الإيراد لكل عملية")
plt.xlabel("الإيراد")
plt.ylabel("التكرار")
plt.tight_layout()
plt.show()
للعلاقة بين الكمية والإيراد يمكنك استخدام مخطط مبعثر:
البيانات.plot(
kind="scatter",
x="الكمية",
y="الإيراد",
figsize=(8, 5),
alpha=0.75
)
plt.title("العلاقة بين الكمية والإيراد")
plt.tight_layout()
plt.show()لا تستنتج السببية من الارتباط وحده. قد يتأثر المتغيران بالسعر أو نوع المنتج أو الموسمية أو عوامل أخرى لم تدخل في الرسم.
توضح رباعية أنسكومب لماذا لا يكفي أن تكون المتوسطات والتباينات والارتباطات متشابهة. مجموعات بيانات مختلفة بصريًا قد تنتج ملخصات إحصائية متقاربة، ولذلك يجمع المحلل الجيد بين الأرقام والتصوير.

من الدفتر إلى سير عمل قابل لإعادة الإنتاج
التحليل المهني يجب أن يعمل من البداية إلى النهاية دون الاعتماد على حالة خفية في الذاكرة. اختبر ذلك بإعادة تشغيل النواة ثم تشغيل جميع الخلايا بالترتيب. إذا فشل الدفتر لأن خلية متأخرة تعتمد على متغير أنشئ يدويًا في جلسة سابقة، فالسير غير قابل لإعادة الإنتاج بعد.
اجعل البيانات الخام للقراءة فقط قدر الإمكان، واحفظ النسخة النظيفة في مكان مستقل. استخدم أسماء ملفات واضحة، وسجّل تاريخ التحليل ومصدر البيانات وقواعد التنظيف. وإذا استخدمت عينة عشوائية، ثبّت مولد العشوائية بحيث يمكن تكرار العينة نفسها عند الحاجة.
from pathlib import Path
import numpy as np
مولد = np.random.default_rng(42)
عينة = البيانات.sample(
n=min(5, len(البيانات)),
random_state=42
)
print(عينة)
مجلد_المعالجة = Path("بيانات") / "معالجة"
مجلد_المعالجة.mkdir(parents=True, exist_ok=True)
البيانات.to_csv(
مجلد_المعالجة / "مبيعات_نظيفة.csv",
index=False,
encoding="utf-8-sig"
)
ملخص_المناطق.to_csv(
مجلد_المعالجة / "ملخص_المناطق.csv",
index=False,
encoding="utf-8-sig"
)في المشاريع الأكبر، انقل خطوات التنظيف المتكررة من الخلايا إلى دوال. هذا يقلل النسخ واللصق ويسمح باختبار الخطوات بصورة مستقلة:
def تنظيف_المبيعات(البيانات):
نتيجة = البيانات.copy()
نتيجة.columns = نتيجة.columns.str.strip()
نتيجة["تاريخ"] = pd.to_datetime(نتيجة["تاريخ"], errors="coerce")
نتيجة = نتيجة.drop_duplicates()
نتيجة["الخصم"] = نتيجة["الخصم"].fillna(0)
return نتيجةالدالة السابقة نموذج مبسط. في عمل حقيقي أضف فحوص الأنواع والنطاقات والقيم المفقودة المناسبة لسياقك، واكتب اختبارات تتأكد من المخرجات المتوقعة.
قراءة النتائج كمهني
التحليل لا ينتهي عندما يظهر جدول أو رسم. اسأل: ما السؤال الذي يجيب عنه؟ ما البيانات التي لم تُجمع؟ هل توجد فئات صغيرة جدًا؟ هل فترة القياس عادلة؟ هل يمكن أن يكون الاختلاف ناتجًا عن تغيير في طريقة التسجيل؟ هل الأرقام مطلقة أم نسبية؟ وما القرار الذي يمكن اتخاذه بثقة وما القرار الذي يحتاج إلى بيانات إضافية؟
عند إعداد تقرير لمدير أو فريق، ميّز بين الملاحظة والتفسير والتوصية. مثال: الملاحظة هي أن منطقة معينة سجلت أعلى إيراد في الملف. التفسير المحتمل قد يتعلق بمزيج المنتجات، أما التوصية فتحتاج إلى فحص عوامل أخرى مثل عدد العملاء والتكلفة والهامش قبل تحويل الملاحظة إلى قرار.
ومن الأخطاء الشائعة: حذف القيم المفقودة دون قياس أثر الحذف، الاعتماد على المتوسط مع وجود قيم متطرفة، استخدام محور رسم مضلل، فرز البيانات بطريقة تغيّر معنى المقارنة، أو تنفيذ خلايا الدفتر بترتيب غير موثق ثم مشاركة نتيجة لا يستطيع الآخرون إعادة إنتاجها.
تمرين عملي متكامل
نفّذ دورة التحليل التالية على ملف المبيعات التدريبي: استورد الملف، اعرض عدد الصفوف والأعمدة، احسب القيم المفقودة والتكرارات، وثّق قرار معالجة كل مشكلة، أنشئ عمود الإيراد، احسب إجمالي الإيراد حسب المنطقة، أنشئ رسمًا عموديًا، ثم احفظ نسخة نظيفة وملخصًا منفصلًا. بعد ذلك أعد تشغيل الدفتر من الصفر وتأكد أن جميع الخلايا تعمل بالترتيب دون تدخل يدوي.
أضف في نهاية الدفتر فقرة قصيرة تجيب عن ثلاثة أسئلة: ما أهم ملاحظة؟ ما أكبر قيد في البيانات؟ ما المعلومة الإضافية التي ستطلبها قبل اتخاذ قرار إداري؟ هذه الأسئلة تحول النشاط من تمرين برمجي إلى ممارسة تحليلية مهنية.
مراجع عملية موثوقة
للتعمق في تفاصيل الدوال، ارجع إلى توثيق قراءة ملفات CSV في Pandas، وتوثيق التعامل مع القيم المفقودة، وتوثيق التجميع، وتوثيق الرسم من إطار البيانات، ودليل أنواع الرسوم في Matplotlib. استخدم التوثيق الرسمي للتحقق من المعاملات والسلوك الفعلي في إصدار المكتبة الذي تعمل عليه.
مهام تفاعلية
اختبار: اختبر معرفتك
ما الدالة المناسبة لقراءة ملف CSV إلى إطار بيانات في Pandas؟ (pd.read_csv) (!pd.groupby) (!pd.plot) (!pd.concat)
ما أفضل إجراء مباشرة بعد استيراد ملف غير مألوف؟ (فحص البنية والأنواع والقيم المفقودة) (!حذف جميع الصفوف التي تحتوي على فراغ) (!إنشاء رسم دائري فورًا) (!تصدير الملف باسم جديد دون فحص)
ماذا تفعل dropna بصورة عامة؟ (تزيل صفوفًا أو أعمدة وفق قواعد القيم المفقودة) (!تحسب متوسط كل عمود) (!ترسم توزيع القيم) (!تدمج ملفين حسب مفتاح)
لماذا يُفضّل الاحتفاظ بالبيانات الخام دون تعديل؟ (لإتاحة الرجوع إلى المصدر وإعادة بناء خطوات التحليل) (!لأن البيانات الخام لا تحتوي أخطاء) (!لأن تنظيف البيانات ممنوع) (!لأن الرسوم لا تعمل على البيانات المعالجة)
ما الاستخدام الأساسي لـ groupby؟ (تقسيم البيانات إلى مجموعات وحساب نتائج لكل مجموعة) (!تحويل دفتر Jupyter إلى صورة) (!تثبيت إصدارات المكتبات) (!تشفير ملف CSV)
أي رسم هو الأنسب عادة لإظهار اتجاه الإيراد عبر الشهور؟ (الرسم الخطي) (!الرسم الدائري) (!المدرج التكراري) (!الرسم الصندوقي فقط)
ما الغرض الأساسي من المدرج التكراري؟ (إظهار شكل توزيع متغير عددي) (!إظهار نصوص الخلايا كاملة) (!قياس عدد الأعمدة فقط) (!تحويل التاريخ إلى نص)
لماذا نقيس الصفوف المكررة قبل حذفها؟ (لفهم حجم المشكلة والتحقق من أن التكرار غير مقصود) (!لأن الحذف يزيد عدد الصفوف) (!لأن التكرار يعني دائمًا خطأ في بايثون) (!لأن القياس يحول القيم إلى تواريخ)
أي ممارسة تدعم قابلية إعادة الإنتاج؟ (استخدام مسارات نسبية وتسجيل الإصدارات وإعادة تشغيل الدفتر كاملًا) (!تنفيذ الخلايا بأي ترتيب ثم حذف الخلايا الفاشلة) (!تعديل الملف الخام يدويًا دون سجل) (!نسخ النتائج النهائية دون حفظ الكود)
ماذا يعني وجود ارتباط بين متغيرين؟ (وجود علاقة إحصائية لا تثبت السببية وحدها) (!أن المتغير الأول يسبب الثاني حتمًا) (!أن المتغيرين متساويان في جميع القيم) (!أن البيانات لا تحتاج إلى تصوير)
لعبة الذاكرة
| إطار البيانات | بنية جدولية تحتوي صفوفًا وأعمدة وتوفرها Pandas للتحليل |
| القيمة المفقودة | خانة لا تحتوي قيمة صالحة وقد تحتاج إلى تفسير أو معالجة |
| التجميع | تقسيم السجلات إلى مجموعات ثم حساب مؤشرات لكل مجموعة |
| المدرج التكراري | رسم يوضح توزيع القيم العددية على فئات |
| الدفتر | مستند تفاعلي يجمع الشرح والكود والنتائج القابلة للتنفيذ |
| قابلية الإعادة | إمكانية تشغيل الخطوات نفسها والحصول على نتائج متسقة في بيئة موثقة |
السحب والإفلات
| طابق الأداة مع وظيفتها الصحيحة. | تحليل البيانات |
|---|---|
| pd.read_csv | استيراد ملف CSV إلى إطار بيانات |
| drop_duplicates | إزالة الصفوف المكررة بعد التحقق منها |
| fillna | تعويض القيم المفقودة وفق قاعدة محددة |
| groupby | تقسيم السجلات إلى مجموعات للتحليل |
| agg | حساب مؤشرات مجمعة مثل المجموع والمتوسط والعدد |
| plot | إنشاء تمثيل بصري للبيانات |
كلمات متقاطعة
| باندا | ما المكتبة المستخدمة هنا لمعالجة إطارات البيانات؟ |
| تنظيف | ما العملية التي تعالج التكرارات والقيم المفقودة ومشكلات الجودة؟ |
| تجميع | ما العملية التي تقسم البيانات إلى مجموعات وتحسب مؤشرات لكل مجموعة؟ |
| تصوير | ما العملية التي تحول الأرقام إلى رسوم تساعد على اكتشاف الأنماط؟ |
| جوبيتر | ما بيئة الدفاتر التفاعلية التي تجمع الشرح والكود والنتائج؟ |
| توثيق | ما الإجراء الذي يسجل المصادر والقرارات والإصدارات لتسهيل إعادة العمل؟ |
مهام مفتوحة
سهل
- إنشاء ملف بيانات تدريبي: أنشئ ملف CSV من اثني عشر صفًا على الأقل يحتوي أعمدة عربية لتاريخ ومنطقة ومنتج وكمية وسعر، وأضف عمدًا قيمة مفقودة واحدة ثم استورده في دفتر Jupyter.
- فحص جودة البيانات: اكتب خلية تعرض الشكل والأنواع وعدد القيم المفقودة والتكرارات، ثم دوّن في ثلاث جمل ما الذي يحتاج إلى مراجعة قبل التحليل.
- معالجة القيم المفقودة: اختر عمودًا في بيانات تدريبية وطبّق معالجة مناسبة لقيمة مفقودة مع شرح سبب اختيارك وعدم الاكتفاء بالحذف التلقائي.
- رسم مقارنة بسيطة: أنشئ رسمًا عموديًا يقارن مقياسًا عدديًا بين فئات، وأضف عنوانًا ومحاور واضحة وفق سؤال مهني محدد.
متوسط
- تقرير تجميعي: استخدم groupby وagg لبناء جدول يلخص المجموع والمتوسط والعدد حسب فئة تختارها، ثم فسّر الفرق بين هذه المؤشرات.
- مقارنة أنواع الرسوم: استخدم البيانات نفسها لإنشاء رسم عمودي ومدرج تكراري ومخطط مبعثر، ثم اكتب متى يكون كل رسم أكثر فائدة لصاحب قرار.
- مقابلة محلل بيانات: أجر مقابلة قصيرة مع زميل يعمل بالبيانات حول أكثر مشكلات الجودة شيوعًا وكيف يوثق قرارات التنظيف، ثم لخّص الدروس دون تضمين أي معلومات سرية أو شخصية.
- دفتر قابل للتشغيل: نظّم دفترًا يبدأ من قراءة الملف الخام وينتهي بتصدير البيانات النظيفة، ثم أعد تشغيله من الصفر وسجل أي اعتماد خفي اكتشفته وأصلحته.
متقدم
- خط أنابيب تحليلي: حوّل خطوات الاستيراد والتنظيف والحساب إلى دوال قابلة لإعادة الاستخدام، واجعل الدفتر يستدعيها بدل تكرار الأوامر يدويًا.
- تدقيق قواعد الجودة: صمّم خمس قواعد تحقق مناسبة لمجموعة بيانات مهنية واستخدم assertions أو فحوصًا برمجية لوقف التحليل عند انتهاك قاعدة حرجة.
- دراسة قرار إداري: اختر سؤال قرار مثل مقارنة أداء مناطق أو منتجات، وابن تحليلًا كاملًا يتضمن جدولًا ورسمًا وحدودًا واضحة لما يمكن وما لا يمكن استنتاجه من البيانات.
- فيديو شرح مهني: أنشئ تسجيل شاشة قصير يشرح سير عملك من البيانات الخام إلى النتيجة النهائية باستخدام بيانات تدريبية أو مجهّلة، وركّز على سبب كل قرار تنظيف وتحليل بدل عرض الأوامر فقط.
مجالات تعلم مرتبطة
ترتبط هذه الدورة بمهارات علم البيانات، وذكاء الأعمال، وإدارة الأداء، والبحث التطبيقي، واتخاذ القرار المبني على البيانات. كما تفيد المحللين والمديرين والمتخصصين الذين يحتاجون إلى تحويل ملفات تشغيلية إلى أدلة قابلة للفحص والمشاركة.
مسرد
| المصطلح | التعريف |
|---|---|
| إطار البيانات | بنية جدولية في Pandas تمثل البيانات في صفوف وأعمدة مع أدوات للفحص والتحويل والتحليل. |
| CSV | صيغة نصية لتبادل البيانات الجدولية حيث تفصل الحقول عادة بفواصل أو محددات مشابهة. |
| القيمة المفقودة | موضع لا تتوفر فيه قيمة صالحة، وقد يتطلب تعويضًا أو استبعادًا أو مراجعة للمصدر حسب السياق. |
| التكرار | ظهور سجل متطابق أو شبه متطابق أكثر من مرة، ويجب التحقق من معناه قبل الحذف. |
| التجميع | تقسيم السجلات وفق مفتاح واحد أو أكثر ثم حساب مقاييس لكل مجموعة. |
| المؤشر المشتق | متغير جديد يُحسب من أعمدة موجودة، مثل الإيراد الناتج عن الكمية والسعر والخصم. |
| المدرج التكراري | رسم يوضح توزيع القيم العددية عبر فئات ويساعد على رؤية الشكل والانتشار والقيم غير المعتادة. |
| المخطط المبعثر | رسم يضع متغيرًا عدديًا على كل محور لفحص العلاقة والنمط والتجمعات بينهما. |
| قابلية إعادة الإنتاج | قدرة شخص آخر أو أنت لاحقًا على تشغيل الخطوات الموثقة في بيئة معروفة والحصول على نتائج متسقة. |
| فحص الجودة | قاعدة أو اختبار يكتشف قيمًا أو أنواعًا أو نطاقات أو علاقات غير مقبولة قبل متابعة التحليل. |
| الجدول المحوري | تلخيص جدولي يوزع مقياسًا على بعدين أو أكثر لتسهيل المقارنة بين الفئات. |
| التوثيق | تسجيل مصدر البيانات والافتراضات وخطوات التنظيف والإصدارات والاستنتاجات والقيود بصورة قابلة للمراجعة. |
مشروعات aiMOOC
MOOCwiki · Deutsch
Nach dem Lernen ist vor dem Lernen
Entdecke direkt den nächsten Lernkurs. Weitere Inhalte erscheinen, wenn Du weiter nach unten scrollst.
Zur MOOCwiki-HauptseiteMediathek
Mediathek
Mediathek wird aus dem Wiki geladen ...
Keine passenden Inhalte gefunden. Bitte ändere Suche oder Filter.
NEWSLernweltNOAH fragen