برمجة بيانات

  • استخدام سلسلة بيانات بوليانية في pandas لاختيار الصفوف

    عندما نواجه تحدي استخدام سلسلة بيانات بوليانية لاختيار بيانات من إطار البيانات باستخدام مكتبة بانداز في لغة البرمجة بايثون، يمكننا القيام بذلك بطرق متعددة. دعونا نستعرض كيف يمكن أن يكون ذلك:

    أولاً وقبل كل شيء، يمكننا استيراد مكتبة بانداز وتحديد الإطار البيانات والسلسلة البوليانية:

    python
    import pandas as pd data = {'Date': ['2009-02-11', '2009-02-12', '2009-02-13', '2009-02-17', '2009-02-18'], 'High': [30.20, 30.28, 30.45, 29.35, 29.35], 'Low': [29.41, 29.32, 29.96, 28.74, 28.56], 'Close': [29.87, 30.24, 30.10, 28.90, 28.92]} df = pd.DataFrame(data) df['Date'] = pd.to_datetime(df['Date']) bool_series = pd.Series([True, False, False, True, False], name='bools')

    الآن، يمكننا استخدام السلسلة البوليانية لتحديد الصفوف المطابقة في إطار البيانات:

    python
    selected_data = df[bool_series]['High']

    النتيجة ستكون إطار بيانات فرعيًا يحتوي على القيم التي تتوافق مع True في السلسلة البوليانية:

    yaml
    Date 2009-02-11 30.20 2009-02-17 29.35 Name: High, dtype: float64

    هذا يعني أنك يمكنك الآن الوصول إلى القيم المرتبطة بالقيم المنطقية في السلسلة بسهولة باستخدام السطر المذكور أعلاه. يمكنك توسيع هذا النهج لتضمين العديد من الأعمدة إذا كان ذلك ضروريًا.

    المزيد من المعلومات

    بالتأكيد، دعونا نعزز فهمنا لكيفية استخدام سلسلة القيم البوليانية لاختيار البيانات من إطار البيانات باستخدام مكتبة pandas في لغة البرمجة Python.

    لنفترض أن لدينا القاعدة الأصلية لإطار البيانات كالتالي:

    python
    import pandas as pd data = {'Date': ['2009-02-11', '2009-02-12', '2009-02-13', '2009-02-17', '2009-02-18'], 'High': [30.20, 30.28, 30.45, 29.35, 29.35], 'Low': [29.41, 29.32, 29.96, 28.74, 28.56], 'Close': [29.87, 30.24, 30.10, 28.90, 28.92]} df = pd.DataFrame(data) df['Date'] = pd.to_datetime(df['Date']) bool_series = pd.Series([True, False, False, True, False], name='bools')

    الآن، نحن قادرون على استخدام سلسلة القيم البوليانية لتحديد الصفوف التي تتوافق مع True. يمكننا استخدام هذا لاسترجاع البيانات المرتبطة بالقيم البوليانية True:

    python
    selected_data = df[bool_series]

    النتيجة ستكون إطار بيانات فرعيًا يحتوي على الصفوف التي تتوافق مع True في السلسلة البوليانية:

    mathematica
    Date High Low Close 0 2009-02-11 30.20 29.41 29.87 3 2009-02-17 29.35 28.74 28.90

    هذا يعني أننا الآن نحصل على جميع البيانات المتعلقة بالصفوف التي تحتوي على True في سلسلة القيم البوليانية.

    وبهذا، يمكنك استخدام هذه الطريقة لاسترجاع البيانات بشكل دقيق ومحدد باستخدام الشروط الخاصة بك والتي تتوفر عبر سلسلة بيانات بوليانية.

  • تحليل بيانات المراجعات في Pandas: حل مشكلة تكرار كلمة disappointed

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

    باستخدام مثالك الذي يتعلق بملف CSV يحتوي على مراجعات المنتجات على موقع أمازون، تسعى إلى حساب عدد مرات تكرار كلمة معينة، مثل “disappointed”، في كل مراجعة. تبدو الفكرة جيدة، ولكن هناك بعض الأخطاء في تنفيذ الكود.

    في البداية، عليك أن تدرك أن الدالة split تعمل على نص فقط، وليس على Series بأكمله. لذلك، عند محاولة تطبيقها على Series مباشرة، ستتلقى رسالة خطأ تفيد بأن ‘Series’ ليس لديها خاصية ‘split’.

    بدلاً من ذلك، يُفضل استخدام دالة apply لتطبيق الدالة split على كل صف (row) في العمود (column) المحدد. يمكن تحقيق ذلك باستخدام الكود التالي:

    python
    reviews['disappointed_count'] = reviews['review'].apply(lambda x: x.split("disappointed").count("") - 1)

    تم استخدام apply هنا لتطبيق الدالة المعينة (lambda) على كل قيمة في عمود ‘review’. يتم استخدام split لتجزئة النص إلى قطع باستخدام كلمة “disappointed” كفاصل، ومن ثم يُحسب العدد الإجمالي للقطع باستخدام count، وأخيرًا يُطرح 1 للتصحيح والحصول على العدد النهائي.

    هذا يجعل الكود أكثر دقة ويتيح لك فهم كيفية تطبيق العمليات على مستوى الصفوف في DataFrame بشكل فعّال. يجب أن يساعد هذا التعديل في حل المشكلة التي واجهتك وتحقيق هدفك في حساب عدد مرات تكرار كلمة “disappointed” في كل مراجعة.

    المزيد من المعلومات

    القضية التي تواجهك في تحليل البيانات تبرز أهمية التفاعل مع البيانات بشكل فعّال واستخدام الدوال الصحيحة. لكن هناك نقاط أخرى يمكن أن تُسلط الضوء عليها لتعزيز فهمك وتعزيز أدائك في التحليل البياني.

    1. التحقق من البيانات:
      قد يكون من الجيد دائمًا التحقق من البيانات قبل تطبيق الدوال. يمكنك استخدام head() لرؤية عدة صفوف في البداية والتأكد من وجود البيانات بالشكل المتوقع.

      python
      print(reviews.head())
    2. تنظيف البيانات:
      في بيئة البيانات الحقيقية، قد يكون هناك حاجة لتنظيف البيانات. على سبيل المثال، يمكن أن تحتوي النصوص على رموز أو أحرف غير مرغوب فيها. يمكنك استخدام تقنيات التنظيف مثل str.replace() لحذف الأحرف الزائدة.

      python
      reviews['review'] = reviews['review'].str.replace('[^\w\s]', '')
    3. معالجة القيم الفارغة:
      في حال كانت هناك قيم فارغة في البيانات، يفضل معالجتها بشكل مناسب. يمكنك استخدام dropna() لحذف الصفوف التي تحتوي على قيم فارغة.

      python
      reviews = reviews.dropna()
    4. تحليل إضافي:
      يمكنك البحث عن نقاط تحليل إضافية لتعزيز فهمك. على سبيل المثال، يمكنك حساب متوسط عدد الظهور للكلمة “disappointed” في جميع المراجعات.

      python
      avg_disappointed_count = reviews['disappointed_count'].mean() print(f"The average count of 'disappointed' in reviews is: {avg_disappointed_count}")

      هذا يمكن أن يضيف قيمة إضافية لتحليلك ويساعد في فهم متوسط تكرار الكلمة في مجمل البيانات.

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

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر