اذهب إلى المحتوى

محمد عاطف17

الأعضاء
  • المساهمات

    5583
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    68

كل منشورات العضو محمد عاطف17

  1. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل
  2. وعليكم السلام ورحمة الله وبركاته. فترة ثلاثة أشهر ليست بالفترة الطويلة جدا و من المفترض إذا كنت قد قمت بفهم الدروس جيدا سابقا فعلى الأقل سيتوجب عليك مراجعة الدرس سريعا مع إمكانية تسريع الدرس وذلك فقط لتقوم بمراجعة وإستذكار ما قمت بمذاكرته سابقا. ولو لاحظت وجود درس قد نسيته تماما فهنا يمكنك مراجعة هذا الدرس والتطبيق عليه مع المدرب حتى تستطيع تذكره وتثبيت المعلومة لديك . أما إذا لم تكن قد قمت بالتطبيق سابقا فيفضل بدء الدورة من البداية ومذاكرة الدروس جيدا والتطبيق مع المدرب . وأنصحك أيضا بكتابة ملخصات لك وذلك للتأكد من فهمك للدرس جيدا وحتى تستطيع الرجوع إليها في أى وقت تريد مراجعة درس ما. ويمكنك قراءة الإجابات التالية لمزيد من النصائح لك :
  3. إن XGBoost يعتمد بشكل أساسي على الـ CPU للتدريب حتى إذا تم تفعيل ال GPU. حيث بالرغم من أن XGBoost يدعم التشغيل على الـ GPU بداية من الإصدار 1.0 إلا أن الكثير من العمليات مثل تحميل البيانات و فرزها وإنشاء الهياكل الداخلية تتم على ال CPU. ويرجى التأكد من أن XGBoost يستخدم الـ GPU بشكل صحيح حيث يجب عليك تعيين المعامل tree_method إلى gpu_hist أو gpu_exact. هكذا : from xgboost import XGBClassifier model = XGBClassifier( tree_method='gpu_hist', # استخدام ال GPU gpu_id=0, # تحديد ال GPU إذا كان هناك أكثر من واحد predictor='gpu_predictor' # استخدام ال GPU للتنبؤ ) حيث أن tree_method='gpu_hist' يستخدم خوارزمية تعتمد على ال GPU لبناء الأشجار. و predictor='gpu_predictor': يستخدم ال GPU لعملية التنبؤ. ويمكنك قراءة الشرح التالي لمزيد من التفاصيل حول إستخدام XGBoost على الkaggle وعلى ال GPU : https://www.kaggle.com/discussions/general/236940 https://www.kaggle.com/code/vinhnguyen/accelerating-xgboost-with-gpu
  4. وعليكم السلام ورحمة الله وبركاته. هذا يعتمد على الأكواد التي تقوم بتنفيذها . حيث المكتبات والأكواد التي تحتاج إلى التنفيذ على المعالجات الرسومية سيتم تلقائيا تشغيلها على المعالجات الرسومية التي قمت بتحديدها . أما إذا كانت الأكواد بسيطه أو تستخدم مكتبات لا تحتاج إلى lمعالجات رسومية او لا تدعم توزيع العمليات بشكل صحيح على ال GPU فهنا سيتم إستخدام ال CPU . لذلك هل يمكنك توضيح ما هي المكتبات التي تعمل عليها ؟ فلو كنت تعمل على مكتبة وPyTorch أو TensorFlow ولم يتم إستخدام ال GPU فيبدوا أنه هناك مشكلة لديك في إعدادات البيئة الخاصة بك . أما إذا كنت تسخدم مكتبات أخرى أو أكواد بسيطة لا تحتاج إلى معالجات رسومية فهنا لا مشكلة في ذلك.
  5. مرحبا @Samer Al Issa. بمجرد إشتراكك في الدورة يجب أن يظهر لك قسم دوراتي في شريط التنقل في أعلى الموقع : يرجى الضغط عليه وسيتم توجيهك إلى صفحة جميع الدورات . يرجى الذهاب إلى الدورة التي قمت بالإشتراك بها : ستجد كل دورة مقسمة إلى عدة مسارات وكل مسار مقسم إلى وحدات أصغر وكل وحدة بها عدد من الدروس. يجب عليك مذاكرة تلك الدروس والمسارات بالترتيب الموجود في الدورة حيث بمجرد دخولك للمسارات كما في الصورة التالية ستجد الوحدات التي بها الدروس يمكنك مشاهدة ذلك بالترتيب. وهنا في موقع الأكاديمية الدروس عبارة عن فيديوهات قد تم تسجيلها مسبقا يمكنك مشاهدتها . وإذا ما واجهت أى صعوبة ستجد دائما أسفل كل درس من الدروس الموجود في الدورة صندوق للتعليقات كما هنا يمكنك دائما وضع سؤالك المتعلق بالدرس هناك . ويتواجد العديد من المدربين التي توفرهم الأكاديمية لتوفير الدعم لك والرد على أسئلتكم ومساعدتكم . أما بخصوص كيفية المذاكرة أو البدأ في الدورة يمكنك قراءة الإجابات التالية لمزيد من التفاصيل والنصائح :
  6. هذه مشكلة شائعة وأغلب الطلاب يعانون منها . حيث نسيان الأكواد والأوامر أمر طبيعي للغاية خصوصا عندما تدرس لغة برمجة جديدة أو تقنية جديدة مثل AI و أي شخص بدأ في تعلم البرمجة بشكل عام مر بهذا لذلك لا تقلق كل ما عليك هو عدم الإستسلام لهذا الشعور ومع التكرار والمراجعة و حل التمارين ستجد أن الأمور أصبحت جيدة وأن مشكلة النسيان لم تعد تتكرر لديك. لذلك أرجو منك كتابة تلخيص للدروس و مذكرات لك بطريقتك الخاصة و كل أمر تعتقد أنك من الممكن أن تنساه وإذا شعرت بالنسيان يمكنك الرجوع إلي تلك المذكرات ومراجعة الدروس وحاول حل تمارين كثيرة حتي تتثبت المعلومة لديك. ويمكنك قراءة الإجابات التالية لمزيد من النصائح لك :
  7. مرحبا حذيفة. لا تقلق هذا ليس خطأ . بل هي من مميزات اكاديمية حسوب انك بمجرد أن تشترك في دورة ما . سيتم فتح جميع الدورات الأخرى لتستطيع مشاهدة أول مسار بشكل مجاني . ولهذا ستجد أن المسارات الأول من جميع الدورات الأخرى الغير مشترك بها فقط هي التي تظهر لك.
  8. يرجى توضيح أى دورة أنت مشترك بها و أي درس تقصده لنستطيع مساعدتك بشكل أفضل. إذا كنت مشترك في دورة "تطوير واجهات المستخدم" فنحن هنا لا نتعامل مع قواعد البيانات . حيث تلك الدورة خاصة فقط بالواجهات الأمامية أى الموقع الذي يظهر للعميل . ولا نتعامل مع قواعد البيانات لأن قواعد البيانات يتم التعامل معها من خلال الخوادم أى الواجهات الخلفية. ويمكنك معرفة الفرق بين الواجهات الأمامية والخلفية من خلال الإجابة التالية : وإليك الإجابة التالية للتعرف على محتوى الدوارات في الأكاديمية وأى دورة خاصة بالواجهة الأمامية و الخلفية. وأيضا كما وضحت لك لا يوجد ما يسمى قواعد بيانات في html حيث html هي فقط لإظهار عناصر الصفحة في المتصفح ولا تتعامل مع قواعد البيانات.
  9. المشكلة بسبب أنك تحاول الوصول إلى ملف index.html في مجلد build الموجود بداخل مجلد manager من خلال electron. وهذا الملف غير موجود حيث يجب تنفيذ أمر build لإنشاء ملفات build بعد تحزيمها في manager . ولكن ستواجهك مشكلة أخرى بسبب المسارات حيث مشروع electron خارج المجلد manager ولهذا المسارات النسبية لن تعمل بشكل صحيح. ولحل تلك المشكلة في ملف manager\package.json يرجى إضافة السطر التالي : "homepage":"./", ليصبح الملف كالتالي : { "name": "manager", "version": "0.1.0", "private": true, "homepage":"./", "dependencies": { "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "^16.2.0", "@testing-library/user-event": "^13.5.0", "react": "^19.0.0", "react-dom": "^19.0.0", "react-scripts": "5.0.1", "web-vitals": "^2.1.4" }, "scripts": { "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject" }, "eslintConfig": { "extends": [ "react-app", "react-app/jest" ] }, "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] } } الآن يرجى تنفيذ أمر build في مجلد electron من خلال الأمر : npm run build الآن يمكنك تشغيل electron أو react أيهما تريد وسيعملان معك.
  10. وعليكم السلام ورحمة الله وبركاته. السبب الرئيسي هو كيفية تعامل الكمبيوتر مع الذاكرة وعلم الحاسوب بشكل عام. حيث في بداية صناعة الكمبيوتر ونظم التشغيل . كان يتم التعامل مع الذاكرة مباشرة . حيث حينما تقوم بإنشاء مصفوفة يتم تخصيص كتلة متجاورة من الذاكرة لتخزين العناصر فمثلا لو لديك قائمة ب 10 عناصر فإنه يتم البحث في الذاكرة لمكان فارغ يحوى 10 block متجاورة ويتم حجز ذلك المكان لتلك المصفوفة . وال index يمثل الإزاحة (offset) من عنوان الذاكرة الأساسي للمصفوفة . ولذلك إذا بدأنا العد من 0، فإن: العنصر الأول يكون عند العنوان: base address + 0 العنصر الثاني يكون عند العنوان: base address + 1 وهكذا هذا يجعل العمليات الحسابية على العناوين أسهل وأسرع و أكثر كفاءة. وأيضا في علوم الحاسوب العد يبدا من 0 وهو يعود إلى الرياضيات والمنطق حيث يكون هذا الترقيم أكثر فعالية في التعبير عن الخوارزميات.
  11. إذا كنت تقصد "دورة تطوير التطبيقات باستخدام بايثون" فسيتوجب عليك أن تحدد ما هو الذي تريد التخصص فيه بشكل متعمق . فلو أردت التعمق في تعلم الآلة أو تحليل البيانات فيجب عليك التركيز عليهم مع مذاكرة مسار الأساسيات أولا قم مسار django و flask وذلك لتستطيع فهم طريقة وكيفية بناء تطبيقات الويب والتي ستحتاجها لإستخراج البيانات وتحليلها . ويمكنك قراءة الإجابة التالية لمزيد من التفاصيل :
  12. إن Google Colab و Jupyter هما منصتان يتم إستخدامهم لتطوير وتشغيل الأكواد التفاعلية في Python. أولا إن Google Colab هو مبني على السحابة (cloud) حيث هو بيئة تطوير متكاملة على السحابة مما يعني أنك لا تحتاج إلى تثبيت أي شيء على جهازك الشخصي و يوفر لك قدرة الوصول إلى الموارد مثل وحدات المعالجة الرسومية (GPU) ووحدات المعالجة المتعددة (TPU) بشكل مجاني دون الحاجة إلى أن يكون لديك موارد كبيرة على جهازك . و يتيح لك مشاركة الأوراق (Notebooks) بسهولة مع الآخرين و يمكنك الوصول إلى المشروع من أي جهاز و اى مكان .و بما أن Colab جزء من Google فإنه يتكامل بسهولة مع أدوات Google الأخرى مثل Google Drive لتخزين و قراءة البيانات منه. أما Jupyter فهو بيئة محلية على جهازك و هو أداة مفتوحة المصدر تُستخدم لتشغيل الأكواد التفاعلية حيث يمكنك تثبيتها على جهاز الكمبيوتر الخاص بك وتعمل بشكل محلي. و يمكنك تخصيص البيئة بالكامل كما تشاء واختيار المكتبات أو الأدوات التي تريد استخدامها حيث أنك لديك الوصول الكامل والتحكم على جهازك . ويمكنك تشغيله بدون الحاجة إلى اتصال بالإنترنت .و هنا إذا أردت استخدام وحدة معالجة رسومية (GPU) أو وحدة معالجة متعددة (TPU) فيجب على جهازك أن يحتوي على تلك الموارد والتي هي مكلفة جدا . أما بخصوص الأفضل بينهما فإذا كنت تحتاج إلى بيئة سحابية مجانية وسهلة الوصول مع دعم GPU/TPU فإن Google Colab هو الخيار الأفضل لك لأنه يوفر هذه الميزات بشكل مجاني ويسهل الوصول إليها من أي مكان. أما إذا كنت تفضل بيئة محلية مع تحكم كامل وتخصيص أعلى فإن Jupyter هو الخيار الأنسب إذا كنت ترغب في التحكم الكامل في البيئة وتخصيص النظام حسب حاجتك بالإضافة إلى أنه لا يعتمد على الاتصال بالإنترنت.
  13. ما هو نوع البطاقة التي تحاول الدفع بها ؟ حيث يجب أنتكون البطاقة هي بطاقة إئتمانية ومفعله للدفع الدولي . ويفضل كما وضحت لك التحدث مع البنك المصدر للبطاقة لك والتأكد هل هي مفعلة للدفع الدولي أم لا . وأيضا هل توجد عمولة على الدفع الدولي وكم هي قيمتها .
  14. 1 دولار يساوي 3.75 ريال سعودي . إذا 290 دولار = 290 * 3.75 = 1087.60 ريال سعوي . ويمكنك دائما من خلال جوجل البحث عن currency convertor و من ثم يمكنك تحويل أى عملة إلى عملى أخرى كما تريد وهذا بسعر اليوم . وإذا أردت شراء الدورة هنا في الأكاديمية فلاحظ أن سعر الدولار يختلف من بنك إلى بنك أخر بناء على العمولات التي يطبقها هذا البنك ولهذا فإن سعر الدورة سيختلف بناء على البنك الخاص بك. لهذا يرجى محادثة البنك التابع له والسؤال عن ذلك قبل الشراء.
  15. وعليكم السلام ورحمة الله وبركاته. نعم إذا كانت قيمة المعامل subsample في نموذج XGBoost تساوي 0.7 فهذا يعني أن النموذج سيستخدم 70% فقط من بيانات التدريب في كل عملية بناء شجرة أو تكرار. و ال 30% المتبقية لن تستخدم. حيث subsample يقوم باختيار العينات بشكل عشوائي من بيانات التدريب في كل تكرار. و هذه الطريقة تساعد في تقليل overfitting لأنها تجعل النموذج يعتمد على عينات مختلفة في كل مرة، مما يزيد من تعميم النموذج.
  16. هذا لأنه يجب على الصور أن تكون بداخل مجلد static حتى يستطيع whitenoise خدمة الصور. لذلك يجب عليك نقل مجلد الصور media بداخل مجلد static وفي ملف django_portfolio\settings.py يرجى إستبدال MEDIA_URL بالتالي : MEDIA_URL = '/static/media/' بعد ذلك في المصتفح يرجى الضغط على CTRL + F5 لحذف الملفات المؤقته.و ستظهر الصور معك .
  17. وعليكم السلام ورحمة الله وبركاته. لاحظ أنك قمت بتعيين DEBUG = False في ملف settings.py ولذلك فإن Django يقوم بتغير طريقة التعامل مع الملفات الثابتة (Static Files) ومجلدات الوسائط (Media Files). حيث عند تعيين DEBUG = False يتوقف Django عن خدمة الملفات الثابتة تلقائيا وهذا ما سبب تلك المشكلة لك. ولحل ذلك يجب استخدام خادم ويب خارجي مثل Apache أو Nginx لخدمة الملفات الثابتة وهذه هي الطريقة الأفضل في الإضافة لديك. ولكن يمكنك إستخدام مكتبة whitenoise . أولا يجب عليك تثبيتها من خلال الأمر التالي : pip install whitenoise بعد ذلك في ملف django_portfolio\settings.py يرجى وضع السطر التالي بداخل قائمة INSTALLED_APPS : 'whitenoise.runserver_nostatic', ووضع السطر التالي بداخل قائمءة MIDDLEWARE : 'whitenoise.middleware.WhiteNoiseMiddleware', بعد ذلك يجب عليك إضافة الأكواد التالية في الملف : STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage' WHITENOISE_USE_FINDERS = True WHITENOISE_AUTOREFRESH = True ولقد قمت بإرفاق الملف لك. settings.py
  18. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل.
  19. وعليكم السلام ورحمة الله وبركاته. إن جافاسكريبت مصممة خصيصا لتعمل على المتصفح وفي بداية ظهورها كانت في الأساس تستخدم للتلاعب بعناصر الصفحة من حيث حذف وإضافة العناصر و تغير تنسيقها و التفاعل مع المستخدم وحتى إضافة animations للعناصر . لهذا فهي ملموسة بشكل واضح في الصفحة ويمكنك رؤية نتائجها مباشرة . ويمكنك دائما طباعة ما تريده في ال console ورؤيته مباشرة وهكذا سترى دائما ما قمت بكتابته في الصفحة . أولا يجب عليك دراسة أساسيات جافاسكريبت ويمكنك البدأ بالدراسة من خلال موسوعة حسوب : https://wiki.hsoub.com/JavaScript أو يمكنك دراسة المقالات والدروس هنا على موقع الأكاديمية : https://academy.hsoub.com/programming/javascript/ بعد الإنتهاء من ذلك يمكنك البحث على الإنترنت أو على اليوتيوب عن تطبيقات أو مشاريع لتعمل عليها . ويمكنك الدخول إلى أى موقع ولو أعجبك مثلا يمكنك محاولة إنشاء مثيل له والتدريب عليه وأهم شئ هو التطبيق العملي وذلك لتتضح لك أهمية الجافاسكريبت و تفهم ما قمت بمذاكرته بشكل أفضل.
  20. هل تقصد حفظ الوقت في قاعدة البيانات ؟ ام ماذا تقصد بطباعة الوقت الحالي ؟ سبب مشكلة إضافة أصفار في قاعدة البيانات فهو بسبب إما إضافة التاريخ بصيغة خاطئة في الإستعلام أو لم يتم وضعه في الإستعلام . وإذا أردت إستخدام التاريخ والوقت الحالي في قاعدة البيانات يمكنك إستخدام الدالة NOW() في قاعدة البيانات في الإستعلام هكذا : $sql = "INSERT INTO my_table (timestart,timefinsh) VALUES (NOW(),NOW())"; هنا يمكنك إستبدال ال my_table بإسم الجدول لديك . وهكذا سيتم إضافة الوقت والتاريخ الحالي في العمودين timestart و timefinsh. أما بخصوص طرح تاريخين مع الوقت في php يمكنك أولا تحويل الوقت إلى UNIX وهو عدد الثواني منذ 1 يناير 1970 ( January 1 1970 00:00:00 UTC) وبعد تحويلهم يمكنك طرح التاريخين وإستخراج عدد الساعات منه هكذا : $timestamp1 = strtotime($time1); $timestamp2 = strtotime($time2); $diff_seconds = abs($timestamp2 - $timestamp1); // تحويل الثواني إلى ساعات $hours = $diff_seconds / 3600; // عدد الساعات هنا في السطر الأول والثاني قمنا بتحويل التاريخ إلى timestamp لذلك في ذلك السطرين يجب عليك تمرير التاريخ الذي أحضرته من قاعدة البيانات إلى الدالة strtotime . وبعد ذلك نقوم بطرح التاريخين والناتج سيكون عدد الثواني بينهما . بعد ذلك نقوم بقسمة الناتج على 3600 وهو عدد الساعات بالثواني : 60 ثانية * 60 دقيقة = 3600 . وهكذا سيكون لديك عدد الساعات في المتغير hours$
  21. وعليكم السلام ورحمة الله وبركاته. الفرق بين scoring و refit يتعلق بكيفية تقييم النموذج واختياره : حيث التقييم (Scoring) هو المعيار الذي يستخدمه GridSearchCV لتقييم جودة النماذج أثناء البحث عبر شبكة المعاملات (hyperparameter tuning) . حيث يمكنك تحديد معايير مختلفة مثل دقة النموذج accuracy أو f1-score أو أي مقياس آخر حسب الحاجة. و في كل مرة يقوم فيها GridSearchCV بتجربة مجموعة من المعاملات يقوم بتقييم أداء النموذج باستخدام المقياس الذي تم تحديده في scoring. أما إعادة التكييف (Refit) تعني أنه بعد إتمام البحث عن أفضل مجموعة من المعاملات (hyperparameters) سيقوم GridSearchCV بإعادة تدريب النموذج باستخدام أفضل المعاملات التي تم العثور عليها على كامل مجموعة البيانات. فإذا قمت بتعيين refit=True فإن GridSearchCV سيعيد تدريب النموذج باستخدام أفضل المعاملات بعد إتمام عملية البحث. أما إذا كان refit مضبوطا على False فإن GridSearchCV لن يعيد تدريب النموذج بعد البحث، بل سيحتفظ فقط بأفضل المعاملات التي تم العثور عليها.
  22. لطباعة الجداول أو JTextArea يمكنك استخدام واجهة برمجة تطبيقات الطباعة java.awt.print و التي توفرها Java. و لطباعة محتوى JTextArea يمكنك استخدام Printable لإنشاء صفحة قابلة للطباعة. import javax.swing.*; import java.awt.*; import java.awt.print.*; public class PrintTextAreaExample { public static void main(String[] args) { JTextArea textArea = new JTextArea(20, 40); textArea.setText("Text To print"); JButton printButton = new JButton("Print"); printButton.addActionListener(e -> { try { textArea.print(); } catch (PrinterException ex) { ex.printStackTrace(); } }); JFrame frame = new JFrame("طباعة JTextArea"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.add(new JScrollPane(textArea), BorderLayout.CENTER); frame.add(printButton, BorderLayout.SOUTH); frame.pack(); frame.setVisible(true); } } و لطباعة محتوى JTable يمكنك استخدام JTable.PrintMode لطباعة الجدول : import javax.swing.*; import java.awt.*; import java.awt.print.*; public class PrintJTableExample { public static void main(String[] args) { String[] columnNames = {"col 1", "col 2", "col 3"}; Object[][] data = { {"1", "value 1", "value 1"}, {"2", "value 2", "value 2"}, {"3", "value 3", "value 3"} }; JTable table = new JTable(data, columnNames); JButton printButton = new JButton("Print Table"); printButton.addActionListener(e -> { try { table.print(JTable.PrintMode.FIT_WIDTH); } catch (PrinterException ex) { ex.printStackTrace(); } }); JFrame frame = new JFrame(" Print Table"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.add(new JScrollPane(table), BorderLayout.CENTER); frame.add(printButton, BorderLayout.SOUTH); frame.pack(); frame.setVisible(true); } } والآن عند استدعائك لدالة print() على JTextArea أو JTable ستظهر لك نافذة الطباعة الافتراضية .
  23. في أكاديمية حسوب يتم دائما تحديث الدورة بما يتناسب مع متطلبات سوق العمل وأيضا لما يوجد من تحديثات سواء في إصدار اللغة أو في أطر العمل والمكتبات . وبمجرد شراءك للدورة يصبح لك وصول مدى الحياة إليها بالإضافة إلى التحديثات المستمرة. أما في دورة php فيتم شرح إصدار 8 من php مع إطار عمل لارافل إصدار 10 وجاري حاليا تحديث الدورة لإصدار 11 من لارافيل . وإليك محتوى الدورة من خلال الرابط التالي : https://academy.hsoub.com/learn/php-web-application-development/ وإليك الرابط الخاص الذي يتم تحديثه بمجرد إصدار تحديثات أو إضافة مسارات في أى دورة من الدورات : https://academy.hsoub.com/release-notes/ أما بخصوص بايثون فيتم إستخدام إصدار 3.11 ويتم دائما تحديث محتويات الدورة أيضا. ويمكنك رؤية محتوى الدورة من خلال الرابط التالي : https://academy.hsoub.com/learn/python-application-development/
  24. وعليكم السلام ورحمة الله وبركاته. إذا كانت البيانات التي تعمل عليها قليلة فلابئس بهذا الكود . أما إذا كنت تتعامل مع بيانات كبيرة جدا فنعم يمكنك تحسينه والأفضل إستخدام الدوال التي توفرها numpy و pandas حيث أنها تعمل بكفائة أكثر في البيانات الكبيرة. يمكنك استخدام np.where وأيضا يمكنك استخدام isin من pandas للتحقق من وجود العناصر في x_dev.index بشكل أكثر كفاءة. import numpy as np split_index = np.where(x_train.index.isin(x_dev.index), 0, -1) وإليك شرح حول np.where : وإليك التوثيق الرسمي لدالة isin : https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.isin.html وكما وضحت لك هذا الكود أفضل إذا كانت البيانات كبيرة جدا لديك.
×
×
  • أضف...