إعداد مختبر البيانات: تثبيت بيئة Jupyter Notebook ومكتبات التحليل الأساسية


إعداد مختبر البيانات: تثبيت بيئة Jupyter Notebook ومكتبات التحليل الأساسية

ماذا سنتعلم اليوم؟ سنقوم بإعداد بيئة عمل متكاملة لتحليل البيانات باستخدام Jupyter Notebook، مع تثبيت المكتبات الأساسية مثل Pandas، Scikit-learn، و PySpark لضمان جاهزيتك للتعامل مع أي مشروع بيانات.

الخطوة 1: التحقق من تثبيت Python و pip

قبل البدء، يجب التأكد من تثبيت Python و مدير الحزم pip على نظامك. افتح الطرفية (Terminal أو Command Prompt) وقم بتشغيل الأوامر التالية للتحقق من الإصدارات.

python --version # التحقق من إصدار بايثون المثبت
pip --version    # التحقق من إصدار pip (مدير حزم بايثون)

إذا لم يكن Python مثبتًا، يرجى زيارة الموقع الرسمي python.org وتنزيل أحدث إصدار.

الخطوة 2: تثبيت بيئة Jupyter Notebook

Jupyter Notebook هو تطبيق ويب يتيح لك إنشاء ومشاركة المستندات التي تحتوي على تعليمات برمجية مباشرة (Live Code)، ومعادلات، وتصورات، ونصوص توضيحية. يُعد حجر الزاوية في أي مختبر بيانات.

pip install jupyter # تثبيت حزمة Jupyter Notebook باستخدام pip
jupyter notebook    # تشغيل Jupyter Notebook وفتحه في المتصفح الافتراضي
ملاحظة تقنية: يُنصح بشدة استخدام البيئات الافتراضية (Virtual Environments) لتجنب تعارض الحزم. يمكنك إنشاء بيئة افتراضية باستخدام python -m venv myenv وتنشيطها (source myenv/bin/activate على Linux/macOS أو .\myenv\Scripts\activate على Windows) قبل تثبيت الحزم.

الخطوة 3: تثبيت مكتبات تحليل البيانات الأساسية

الآن بعد أن أصبح Jupyter Notebook جاهزًا، حان الوقت لتثبيت المكتبات الأكثر استخدامًا في علم البيانات: Pandas لمعالجة البيانات، Scikit-learn للتعلم الآلي، و Matplotlib للرسوم البيانية.

pip install pandas scikit-learn matplotlib numpy # تثبيت المكتبات الأساسية لتحليل البيانات والتعلم الآلي

بعد التثبيت، يمكنك التحقق من أن المكتبات تعمل بشكل صحيح داخل Jupyter Notebook أو سطر الأوامر:

import pandas as pd # استيراد مكتبة Pandas للتعامل مع البيانات الجدولية (DataFrames)
import numpy as np   # استيراد مكتبة NumPy للعمليات العددية والمصفوفات
import matplotlib.pyplot as plt # استيراد مكتبة Matplotlib للرسوم البيانية والتصورات
from sklearn.linear_model import LinearRegression # استيراد نموذج انحدار خطي من Scikit-learn لاختبار المكتبة

print("تم تثبيت Pandas بنجاح، الإصدار:", pd.__version__) # طباعة إصدار Pandas
print("تم تثبيت NumPy بنجاح، الإصدار:", np.__version__) # طباعة إصدار NumPy
print("تم تثبيت Matplotlib بنجاح، الإصدار:", plt.__version__) # طباعة إصدار Matplotlib
print("تم استيراد Scikit-learn بنجاح.") # تأكيد استيراد Scikit-learn

# مثال بسيط لاستخدام Pandas و Matplotlib
data = {'العمود_أ': [1, 2, 3, 4, 5], 'العمود_ب': [5, 4, 3, 2, 1]}
df = pd.DataFrame(data) # إنشاء DataFrame جديد من البيانات
print("\nDataFrame تم إنشاؤه باستخدام Pandas:")
print(df) # طباعة DataFrame

plt.figure(figsize=(6, 4)) # إعداد حجم الرسم البياني
plt.plot(df['العمود_أ'], df['العمود_ب'], marker='o') # رسم خط بين العمودين مع تحديد نقاط
plt.title('مثال بسيط للرسم البياني باستخدام Matplotlib') # عنوان الرسم البياني
plt.xlabel('العمود أ') # تسمية المحور السيني
plt.ylabel('العمود ب') # تسمية المحور الصادي
plt.grid(True) # إضافة شبكة للرسم البياني
plt.show() # عرض الرسم البياني

الخطوة 4: إعداد PySpark (اختياري ومتقدم)

إذا كنت تخطط للعمل مع مجموعات بيانات كبيرة ومعالجة البيانات الموزعة، فإن PySpark (واجهة Python لـ Apache Spark) ضرورية. يتطلب تثبيته وجود Java و Apache Spark مثبتين مسبقًا على نظامك.

pip install pyspark # تثبيت حزمة PySpark

بعد تثبيت حزمة PySpark، يمكنك التحقق من إعدادها بنجاح:

import findspark # مكتبة لمساعدة بايثون في العثور على Spark
findspark.init() # تهيئة findspark لتمكين PySpark من العمل
from pyspark.sql import SparkSession # استيراد SparkSession لبدء جلسة سبارك

spark = SparkSession.builder.appName("PySparkSetupTest").getOrCreate() # إنشاء جلسة سبارك جديدة أو الحصول على جلسة موجودة
print("تم تثبيت PySpark بنجاح وإعداد جلسة سبارك.") # تأكيد نجاح الإعداد

# مثال بسيط لاستخدام PySpark
data_spark = [("أحمد", 25), ("ليلى", 30), ("خالد", 22)]
df_spark = spark.createDataFrame(data_spark, ["الاسم", "العمر"]) # إنشاء DataFrame باستخدام سبارك
df_spark.show() # عرض DataFrame في سبارك

spark.stop() # إيقاف جلسة سبارك لتحرير الموارد

الكود النهائي الكامل (Python)

هذا السكربت يجمع الأوامر الأساسية للتحقق من تثبيت المكتبات واستخدامها بشكل مبدئي:

# التحقق من إصدارات المكتبات الأساسية
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

print("--- التحقق من المكتبات الأساسية ---")
print("Pandas الإصدار:", pd.__version__)
print("NumPy الإصدار:", np.__version__)
print("Matplotlib الإصدار:", plt.__version__)
print("Scikit-learn تم استيراده بنجاح.")

# مثال بسيط لاستخدام Pandas و Matplotlib
data = {'العمود_أ': [1, 2, 3, 4, 5], 'العمود_ب': [5, 4, 3, 2, 1]}
df = pd.DataFrame(data)
print("\nDataFrame تم إنشاؤه باستخدام Pandas:")
print(df)

plt.figure(figsize=(6, 4))
plt.plot(df['العمود_أ'], df['العمود_ب'], marker='o')
plt.title('مثال بسيط للرسم البياني باستخدام Matplotlib')
plt.xlabel('العمود أ')
plt.ylabel('العمود ب')
plt.grid(True)
plt.show()

# التحقق من إعداد PySpark (يتطلب تثبيت Java و Apache Spark مسبقًا)
try:
    import findspark
    findspark.init()
    from pyspark.sql import SparkSession

    spark = SparkSession.builder.appName("FullSetupTest").getOrCreate()
    print("\n--- التحقق من PySpark ---")
    print("تم تثبيت PySpark بنجاح وإعداد جلسة سبارك.")

    data_spark = [("أحمد", 25), ("ليلى", 30), ("خالد", 22)]
    df_spark = spark.createDataFrame(data_spark, ["الاسم", "العمر"])
    print("DataFrame تم إنشاؤه باستخدام سبارك:")
    df_spark.show()

    spark.stop()
except ImportError:
    print("\n--- تحذير: PySpark غير مثبت أو لم يتم تهيئته بشكل صحيح. ---")
    print("تأكد من تثبيت 'pyspark' وتهيئة 'findspark' إذا كنت بحاجة إلى Spark.")
except Exception as e:
    print(f"\n--- خطأ في PySpark: {e} ---")
    print("تأكد من تثبيت Java و Apache Spark وتهيئة متغيرات البيئة بشكل صحيح.")

النتيجة المتوقعة

عند تشغيل الأوامر والسكربتات المذكورة أعلاه، ستشاهد:

  1. إصدارات Python و pip المثبتة على نظامك.
  2. رسائل تأكيد تثبيت Jupyter Notebook والمكتبات الأساسية (Pandas, Scikit-learn, Matplotlib, NumPy).
  3. إخراج DataFrame صغير تم إنشاؤه باستخدام Pandas.
  4. رسم بياني بسيط يظهر العلاقة بين عمودين، يتم عرضه في نافذة منفصلة أو مضمنًا إذا كنت تستخدم Jupyter Notebook.
  5. رسائل تأكيد لنجاح إعداد PySpark (إذا تم تثبيت Java و Apache Spark بشكل صحيح)، بالإضافة إلى عرض DataFrame صغير تم إنشاؤه باستخدام Spark.
  6. في حال وجود مشكلة في PySpark، ستظهر رسالة تحذير أو خطأ توضح المشكلة.