Ali Ahmed55 نشر 8 نوفمبر أرسل تقرير نشر 8 نوفمبر السلام عليكم انا هنا عاوز يبدل كل الصفر بقيمه NaN ماعد عمود Pregnancies وكمان عمود الDiabetesPedigreeFunction بس بردو بيغير الاصفر ال قيمه NaN وانا مش عاوز كده ؟ يعني مش ده المنطقي والطبيعه والا اي ؟ for col in diabetes.columns: if col != 'Pregnancies' or col != 'DiabetesPedigreeFunction': diabetes[col] = diabetes[col].replace(0,np.nan) ودي البيانات diabetes_clean.csv 2 اقتباس
0 عبد الوهاب بومعراف نشر 8 نوفمبر أرسل تقرير نشر 8 نوفمبر الكود الحالي فيه مشكلة بسيطة في الشرط الذي يستخدم لتحديد الأعمدة التي لن يتم استبدال القيم فيها، حيث استخدمت الشرط: if col != 'Pregnancies' or col != 'DiabetesPedigreeFunction' ولكن هذا الشرط سيظل صحيحا دائما، لأن أي عمود إما أنه ليس 'Pregnancies' أو ليس 'DiabetesPedigreeFunction'، لذا يجب عليك استخدام الشرط and حتى يستثني فقط هذين العمودين معا، جرب تعديل الكود إلى الآتي: for col in diabetes.columns: if col != 'Pregnancies' and col != 'DiabetesPedigreeFunction': diabetes[col] = diabetes[col].replace(0, np.nan) هكذا سيتم استبدال القيم 0 بقيم NaN في جميع الأعمدة، ما عدا الأعمدة 'Pregnancies' و 'DiabetesPedigreeFunction'. 1 اقتباس
0 محمد عاطف17 نشر 8 نوفمبر أرسل تقرير نشر 8 نوفمبر وعليكم السلام ورحمة الله وبركاته . لا هنا المنطق خاطئ . يجب عليك الإنتباه أنك إذا قمت بإستخدام not فإنك تقوم بتبديل الشرط . فمثلا نفرض أنك تريد التحقق من رقم هل هو 1 أو 2 نقوم بتنفيذ أمر معين فهنا الشرط سيكون كالتالي : num = 1 if num == 1 or num == 2: print("ok") ولكن ماذا لو أردنا عكس الشرط أي إذا كان الرقم 1 أو 2 لا نقوم بتنفيذ الأمر هنا سنستخدم not (!) وبهذا يجب تبديل الشرط or ليكون and : num = 5 if num != 1 and num != 2: print("ok") وهكذا إذا تم إستخدام not وكان يوجد شرط and يتم تحوليه إلى or والعكس لو كان يوجد or يتم تحويله إلى and. وهكذا نفس المنطق لديك نحن نريد عدم تنفيذ الكود إذا كان العمود Pregnancies أو DiabetesPedigreeFunction إذا هنا الشرط (أو or ) وبما أننا نريد عكسه أى سنستخدم (not !) إذا سنقوم بتحويل or إلى and هكذا : for col in diabetes.columns: if col != 'Pregnancies' or col != 'DiabetesPedigreeFunction': diabetes[col] = diabetes[col].replace(0,np.nan) ويمكنك التفكير فيها بطريقة منطقية أكثر إذا كان العمود مثلا Pregnancies فإن الشرط col != 'Pregnancies' لن يتحقق ولكن col != 'DiabetesPedigreeFunction' سيتحقق وبهذا سيتم تنفيذ الكود بسبب or. 1 اقتباس
0 Ali Ahmed55 نشر 8 نوفمبر الكاتب أرسل تقرير نشر 8 نوفمبر بتاريخ 2 دقائق مضت قال محمد عاطف17: ويمكنك التفكير فيها بطريقة منطقية أكثر إذا كان العمود مثلا Pregnancies فإن الشرط col != 'Pregnancies' لن يتحقق ولكن col != 'DiabetesPedigreeFunction' سيتحقق وبهذا سيتم تنفيذ الكود بسبب or. ايوه صح فعلان المفروض and مش or عشان انا عاوز العمود ده وكمان العمود ده فا الف شكراا لحضرتكم جدا جزاكم الله كل خير الازم الشرطين يتحقيق مش شرط واحد 1 اقتباس
السؤال
Ali Ahmed55
السلام عليكم
انا هنا عاوز يبدل كل الصفر بقيمه NaN ماعد عمود Pregnancies وكمان عمود الDiabetesPedigreeFunction بس بردو بيغير الاصفر ال قيمه NaN وانا مش عاوز كده ؟
يعني مش ده المنطقي والطبيعه والا اي ؟
ودي البيانات
diabetes_clean.csv
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.