البرمجة

تحسين حفظ نتائج التنبؤ باستخدام Pandas في Python

فيما يبدو، يواجهك تحدي في حفظ نتائج التنبؤ من نموذج الانحدار في scikit-learn إلى ملف CSV باستخدام مكتبة Pandas. يبدو أن الخطأ الذي تواجهه يرتبط بمحاولتك استخدام وظيفة to_csv مباشرة على مصفوفة NumPy، وهو نوع البيانات الذي يتم إرجاعه من دالة predict.

لحل هذا، يتعين عليك تحويل نتائج التنبؤ إلى كائن مناسب لـ Pandas قبل استخدام الدالة to_csv. يمكنك القيام بذلك عبر الخطوات التالية:

  1. استخدام وظيفة pandas.DataFrame لتحويل مصفوفة NumPy إلى DataFrame.
  2. تحديد اسماء الاعمدة إذا لزم الأمر.
  3. استخدام to_csv على DataFrame الناتج.

إليك تعديل للكود الذي قدمته:

python
import pandas as pd # تنبؤ النموذج prediction = regressor.predict(data[['X']]) # تحويل مصفوفة NumPy إلى DataFrame prediction_df = pd.DataFrame(prediction, columns=['Predicted Values']) # حفظ النتائج في ملف CSV prediction_df.to_csv('C:/localpath/test.csv', index=False)

في هذا السياق، يتم إنشاء DataFrame باسم prediction_df باستخدام البيانات التي تم التنبؤ بها، وتم تعيين اسم العمود إلى ‘Predicted Values’. ثم يتم استخدام الدالة to_csv لحفظ DataFrame كملف CSV، مع تعطيل الفهرس (index) للحفاظ على نظافة البيانات.

باستخدام هذا التعديل، يجب أن يتم حفظ نتائج التنبؤ بنجاح في ملف CSV دون الحاجة إلى مواجهة خطأ السابق.

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

بالطبع، دعنا نعزز المعلومات حول الكود والتحديات التي قد تواجهها:

في الكود الأصلي، كنت قد استخدمت مكتبة scikit-learn للتنبؤ باستخدام النموذج regressor، وكانت النتائج تخزن في مصفوفة NumPy تسمى prediction. ومن ثم، حاولت استخدام دالة to_csv مباشرة على هذه المصفوفة مما أدى إلى الخطأ.

التعديل الذي قمت به يتيح لك الآن تحويل تلك المصفوفة إلى هيكل بيانات مناسب باستخدام Pandas، والتي تعرف بالـ DataFrame. هذا يسهم في حل مشكلة AttributeError الناجمة عن محاولة استخدام to_csv على مصفوفة NumPy مباشرة.

بعد تحويل البيانات إلى DataFrame، يمكنك بسهولة تخصيص العديد من الخصائص والوظائف المتاحة في Pandas. على سبيل المثال، يمكنك تغيير اسماء الأعمدة، أو تنسيق البيانات، أو إجراء عمليات تحليل استكشافي على النتائج بشكل أفضل.

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

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