Ali Ahmed55 نشر 31 مايو 2025 أرسل تقرير نشر 31 مايو 2025 السلام عليكم انا هنا عاوز اشوف عديد القيمه المفقود ل كل عمود ولكن في البيانات دي فيه 341 عمود ف pandas مش بيعرضهم كلهم بس انا عاوز اعرضهم كلهم ازي ؟ ده الكود data_train.isna().sum() ودي النتجيه row_id 0 sequence_type 0 sequence_id 0 sequence_counter 0 subject 0 ... tof_5_v59 30142 tof_5_v60 30142 tof_5_v61 30142 tof_5_v62 30142 tof_5_v63 30142 Length: 341, dtype: int64 3 اقتباس
0 محمد عاطف25 نشر 31 مايو 2025 أرسل تقرير نشر 31 مايو 2025 وعليكم السلام ورحمة الله وبركاته. أعتقد أن تريد إظهار جميع الأعمدة وليس 5 فقط . حيث يشكل افتراضي pandas تقوم بتلخيص العرض ولا تقوم بعرض كل الأعمدة إذا كان عددها كبيرا كما لديك هنا . وتوجد العديد من الحلول يمكنك حاليا إستخدام هذا الحل : import pandas as pd # لعرض جميع الأعمدة بدون تقييد pd.set_option('display.max_columns', None) data_train.isna().sum() هنا قمنا بتغير إعدادات pandas لتعرض جميع الأعمدة. 1 اقتباس
0 Ali Ahmed55 نشر 31 مايو 2025 الكاتب أرسل تقرير نشر 31 مايو 2025 ايوه بس هي الطريقعه دي بشتعل معه head() فقط بتاريخ 12 دقائق مضت قال محمد_عاطف: وعليكم السلام ورحمة الله وبركاته. أعتقد أن تريد إظهار جميع الأعمدة وليس 5 فقط . حيث يشكل افتراضي pandas تقوم بتلخيص العرض ولا تقوم بعرض كل الأعمدة إذا كان عددها كبيرا كما لديك هنا . وتوجد العديد من الحلول يمكنك حاليا إستخدام هذا الحل : import pandas as pd # لعرض جميع الأعمدة بدون تقييد pd.set_option('display.max_columns', None) data_train.isna().sum() هنا قمنا بتغير إعدادات pandas لتعرض جميع الأعمدة. 1 اقتباس
0 محمد عاطف25 نشر 31 مايو 2025 أرسل تقرير نشر 31 مايو 2025 بتاريخ 1 دقيقة مضت قال Ali Ahmed55: ايوه بس هي الطريقعه دي بشتعل معه head() فقط لا هذه الطريقة لا تقتصر على head() فقط بل تعمل مع كل عمليات العرض في pandas حيث فكرة هذ السطر "أنك تخبر pandas أن تعرض كل الأعمدة لك مهما كان عددهم. هل يمكنك توضيح ما الذي ظهر لك عند إستخدام هذا الكود ؟ 1 اقتباس
0 Ali Ahmed55 نشر 31 مايو 2025 الكاتب أرسل تقرير نشر 31 مايو 2025 بتاريخ الآن قال محمد_عاطف: لا هذه الطريقة لا تقتصر على head() فقط بل تعمل مع كل عمليات العرض في pandas حيث فكرة هذ السطر "أنك تخبر pandas أن تعرض كل الأعمدة لك مهما كان عددهم. هل يمكنك توضيح ما الذي ظهر لك عند إستخدام هذا الكود ؟ انا استخدومت الكود ده في خانه لوجدها في Kaggle Notebook وعملت Run و بعد كده بشوف لقيتي بس الhead() هو العرض الاعمده كله بس الكود ده الا data_train.isna().sum() والا حتي ده data_train.info() 1 اقتباس
0 محمد عاطف25 نشر 31 مايو 2025 أرسل تقرير نشر 31 مايو 2025 بتاريخ 2 دقائق مضت قال Ali Ahmed55: انا استخدومت الكود ده في خانه لوجدها في Kaggle Notebook وعملت Run و بعد كده بشوف لقيتي بس الhead() هو العرض الاعمده كله بس الكود ده الا data_train.isna().sum() والا حتي ده data_train.info() بما أنك وضحت أنك تعمل على Kaggle Notebook ودعني أوضح لك لما يعمل على Kaggle . إن head() تقوم بإعادة DataFrame، وبالتالي pandas تقوم بطباعة جدول كامل وفعلا إعداد display.max_columns = None يعمل هنا ويجعله يعرض كل الأعمدة مهما كان عددهم. أما في data_train.isna().sum() فالنتيجة هنا عبارة عن Series طويلة وليس DataFrame فحتى لو إستخدمت pd.set_option('display.max_columns', None) فهذا لن يؤثر على عدد الصفوف أو القيم في Series بل بيأثر على الأعمدة فقط. يمكنك تجربة الكود التالي ويجب أن يعمل معك إن شاء الله : import pandas as pd # عرض كل الأعمدة والصفوف pd.set_option('display.max_columns', None) pd.set_option('display.max_rows', None) #هنا لو أردت منع إختصار النصوص pd.set_option('display.width', None) pd.set_option('display.max_colwidth', None) print(data_train.isna().sum()) 1 اقتباس
0 Ali Ahmed55 نشر 31 مايو 2025 الكاتب أرسل تقرير نشر 31 مايو 2025 هو تمام جدا جدا بس الكود ده pd.set_option('display.max_rows', None) اشتغل معه ده print(data_train.isna().sum()) ولكن ماشتغلش معه ده data_train.ifno() لسه النتجيه دي كده <class 'pandas.core.frame.DataFrame'> RangeIndex: 107 entries, 0 to 106 Columns: 336 entries, row_id to tof_5_v63 dtypes: float64(332), int64(1), object(3) memory usage: 281.0+ KB 1 اقتباس
0 محمد عاطف25 نشر 31 مايو 2025 أرسل تقرير نشر 31 مايو 2025 بتاريخ 5 دقائق مضت قال Ali Ahmed55: هو تمام جدا جدا بس الكود ده pd.set_option('display.max_rows', None) اشتغل معه ده print(data_train.isna().sum()) ولكن ماشتغلش معه ده data_train.ifno() لسه النتجيه دي كده <class 'pandas.core.frame.DataFrame'> RangeIndex: 107 entries, 0 to 106 Columns: 336 entries, row_id to tof_5_v63 dtypes: float64(332), int64(1), object(3) memory usage: 281.0+ KB يمكنك تجربة الكود التالي بدلا من info : col_info = pd.DataFrame({ 'dtype': data_train.dtypes, 'missing': data_train.isna().sum() }) print(col_info) 1 اقتباس
0 بلال زيادة نشر 1 يونيو 2025 أرسل تقرير نشر 1 يونيو 2025 عشان تعرض كل الأعمدة الـ 341 في إخراج data_train.isna().sum() باستخدام Pandas، لأن Pandas بيختصر الإخراج افتراضيًا لما يكون فيه عدد كبير من الأعمدة، تقدر تغيّر إعدادات العرض باستخدام pd.set_option هذا هيخلي Pandas يعرض كل الأعمدة من غير اختزال. import pandas as pd # إعداد Pandas لعرض كل الأعمدة pd.set_option('display.max_columns', None) pd.set_option('display.max_rows', None) # لو عايز تعرض كل الصفوف كمان # عرض عدد القيم المفقودة لكل عمود print(data_train.isna().sum()) pd.set_option('display.max_columns', None) بيخلي Pandas يعرض كل الأعمدة بغض النظر عن عددها. pd.set_option('display.max_rows', None) اختياري، لو عايز تعرض كل الصفوف من غير اختزال. لما تشغل data_train.isna().sum() هتشوف عدد القيم المفقودة لكل عمود من الـ 341 عمود. لو عايز تعيد الإعدادات للوضع الافتراضي بعدين، استخدم: pd.reset_option('display.max_columns') pd.reset_option('display.max_rows') 1 اقتباس
0 Ali Ahmed55 نشر 1 يونيو 2025 الكاتب أرسل تقرير نشر 1 يونيو 2025 تمام جدا جدا الف شكراا جدا لحضرتكم جزاكم الله كل خير اقتباس
0 Mustafa Suleiman نشر 2 يونيو 2025 أرسل تقرير نشر 2 يونيو 2025 الأفضل إنشاء دالة شاملة لتحليل القيم المفقودة: def analyze_missing_values(df): missing_df = pd.DataFrame({ 'Column': df.columns, 'Missing_Count': df.isna().sum().values, 'Missing_Percentage': (df.isna().sum().values / len(df) * 100).round(2), 'Data_Type': df.dtypes.values }) ثم الترتيب حسب عدد القيم المفقودة: missing_df = missing_df.sort_values('Missing_Count', ascending=False) ثم عرض الملخص: print(f"Total columns: {len(df.columns)}") print(f"Columns with no missing values: {len(missing_df[missing_df['Missing_Count'] == 0])}") print(f"Columns with missing values: {len(missing_df[missing_df['Missing_Count'] > 0])}") print("\n" + "="*60) ثم عرض جميع النتائج: with pd.option_context('display.max_rows', None, 'display.max_columns', None): print(missing_df.to_string(index=False)) return missing_df ولا تنسى استدعاء الدالة: missing_analysis = analyze_missing_values(data_train) 1 اقتباس
0 Ali Ahmed55 نشر 2 يونيو 2025 الكاتب أرسل تقرير نشر 2 يونيو 2025 تمام جدا جدا الف شكراا جدا لحضرتك جزاك الله كل خير اقتباس
السؤال
Ali Ahmed55
السلام عليكم
انا هنا عاوز اشوف عديد القيمه المفقود ل كل عمود ولكن في البيانات دي فيه 341 عمود ف pandas مش بيعرضهم كلهم بس انا عاوز اعرضهم كلهم ازي ؟
ده الكود
ودي النتجيه
11 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.