Ahmed Ahmed64 نشر 31 يناير أرسل تقرير نشر 31 يناير السلام عليكم self.df = pd.read_excel(self.file_name,sheet_name=self.vq,header=None) self.DATA_A() self.df = pd.DataFrame.from_dict(self.dataT) self.df =self.df[['إسم الطالب', 'إسم المادة' ,'العام الدراسي' , 'نتيجة المادة' ]] self.df['نتيجة المادة'] = pd.to_numeric(self.df['نتيجة المادة'], errors='coerce') self.searjh = self.df[self.df['إسم الطالب'] == str(self.label_Title.cget("text"))] self.nT = self.searjh['نتيجة المادة'] self.searjh["التقدير"] = self.nT.apply(lambda x: self.Estimates) def Estimates(self): if self.nT >= 85: self.searjh["التقدير"] ="ممتاز" elif self.nT >=75: self.searjh["التقدير"] ="جيد جداً" elif self.nT >=65: self.searjh["التقدير"] ="جيد" elif self.nT >=50: self.searjh["التقدير"] ="مقبول" else: self.searjh["التقدير"] ="ضعيف" اقتباس
0 Hossam Mohamed15 نشر 31 يناير أرسل تقرير نشر 31 يناير اشرح المشكلة بشكل اوضح واعرض لنا الناتج output اقتباس
0 Ahmed Ahmed64 نشر 31 يناير الكاتب أرسل تقرير نشر 31 يناير بتاريخ 15 دقائق مضت قال Hossam Mohamed15: اشرح المشكلة بشكل اوضح واعرض لنا الناتج output أخي في الحقيقة كنت أحاول أن أدرج عمود جديد على الداتا فريم حيث نتيجة هذا العمود يقوم بجلبها بالإعتماد على عمود self.searjh['نتيجة المادة'] حيث حاول أن أصنع هذا الكود self.searjh['التقدير'] = self.searjh['نتيجة المادة'].apply(lambda x: 'NaN' if x > 90 else "ممتاز") وأنا أحاول أن أدخل def على السطر الذي بالأعلى def Estimates(self): if self.nT >= 85: self.searjh["التقدير"] ="ممتاز" elif self.nT >=75: self.searjh["التقدير"] ="جيد جداً" elif self.nT >=65: self.searjh["التقدير"] ="جيد" elif self.nT >=50: self.searjh["التقدير"] ="مقبول" else: self.searjh["التقدير"] ="ضعيف" الرجاء المساعدة في ذلك اقتباس
0 Hossam Mohamed15 نشر 31 يناير أرسل تقرير نشر 31 يناير اظن ان الخطأ في استخدامك ل self.searjh بدلاً من self.search ومن ثم قم بتجربة هذا التعديل على دالة lambda (if x <= 90 else x 'ممتاز' :lambda x) اقتباس
السؤال
Ahmed Ahmed64
السلام عليكم
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.