Ahmed Ahmed64 نشر 19 يناير أرسل تقرير نشر 19 يناير (معدل) السلام عليكم ورحمة الله وبركاته جمعة طيبة للجميع في البداية أحب أن أشكر كل من ساهم في تلقيني معلومة في هذا الصرح العلمي والذي عن نفسي استفدت منه كثيراُ إخوتي لقد تكونت لدي مجموعة من الأفكار عن كتابة الكود ولاكن في بعض الأحيان أكون عاجز عن استكماله الأن أحاول تصميم DataFrame من جدول Excel في البداية لكي تكون الصورة واضحة لكم الجدول يتكون من مجموعة كبيرة من الأعمدة ليس لها عنوان .... لنفترض أن الصف الأول حتى الصف الثالث لا يحتوي أي بيانات ،،، أود أن أقوم بإنشاءDataFrame في البداية قمت بي بقراءة الملف هكذا df = pd.read_excel("ABC.xlsx") مثلا أود أن أقرأ العمود 3 قمت بذلك df.iloc[3::, 2] أود أيضا أن أقرأ العمود 4 قمت بذلك df.iloc[3::, 3] الأن سؤالي كيف أقوم بتكوين DataFrame من هذه الأعمدة مع إعطاء اسم فهرس لكل عمود حتى أتعامل به في المستقبل DATA = {'الأول':df.iloc[3::, 2],'الثاني':df.iloc[3::, 3]} df1 = pd.DataFrame(DATA) هل الكود هكذا به مشكلة إن كان كتابة الكود غير سليم فأرجو شرح كيف أقوم بهذا تم التعديل في 19 يناير بواسطة Ahmed Ahmed64 1 اقتباس
0 Adnane Kadri نشر 19 يناير أرسل تقرير نشر 19 يناير الكود الذي كتبته لإنشاء DataFrame يبدو صحيحا بشكل عام، ولكن إليك طريقة أفضل لتحديد الأعمدة وإعطائها أسماء: # اختيار الأعمدة المحددة من DataFrame الأصلي selected_columns = df.iloc[3:, 2:4] # تحديد أسماء الأعمدة column_names = ['الأول', 'الثاني'] # إنشاء DataFrame df1 = pd.DataFrame(selected_columns.values, columns=column_names) بهذه الطريقة، سيتم تحديد الأعمدة 2 و 3 من DataFrame الأصلي (iloc[3:, 2:4]) وتخزينها في المتحول selected_columns. ثم تحديد أسماء الأعمدة وأخيرًا إنشاء DataFrame جديد باستخدام هذه الأعمدة وأسمائها. 1 اقتباس
0 Ahmed Ahmed64 نشر 19 يناير الكاتب أرسل تقرير نشر 19 يناير بتاريخ 4 دقائق مضت قال Adnane Kadri: الكود الذي كتبته لإنشاء DataFrame يبدو صحيحا بشكل عام، ولكن إليك طريقة أفضل لتحديد الأعمدة وإعطائها أسماء: # اختيار الأعمدة المحددة من DataFrame الأصلي selected_columns = df.iloc[3:, 2:4] # تحديد أسماء الأعمدة column_names = ['الأول', 'الثاني'] # إنشاء DataFrame df1 = pd.DataFrame(selected_columns.values, columns=column_names) بهذه الطريقة، سيتم تحديد الأعمدة 2 و 3 من DataFrame الأصلي (iloc[3:, 2:4]) وتخزينها في المتحول selected_columns. ثم تحديد أسماء الأعمدة وأخيرًا إنشاء DataFrame جديد باستخدام هذه الأعمدة وأسمائها. df.iloc[3:, 2:4] أخي هل لك أن توضح لي أكثر لقد ذكرت العمود 2 و العمود الثالث إذا كيف تم الكتابه هكذا 1 اقتباس
0 Adnane Kadri نشر 19 يناير أرسل تقرير نشر 19 يناير بتاريخ 27 دقائق مضت قال Ahmed Ahmed64: df.iloc[3:, 2:4] أخي هل لك أن توضح لي أكثر لقد ذكرت العمود 2 و العمود الثالث إذا كيف تم الكتابه هكذا الجزء df.iloc[3:, 2:4] يستخدم لتحديد جزء معين من DataFrame باستخدام تقديم الصفوف والأعمدة المحددة. فـ: 3:: يعني ابتداءً من الصف رقم 3 وحتى نهاية الصفوف. هذا يتجاوز الصفوف الثلاثة الأولى (التي قد تحتوي على عناوين الأعمدة أو معلومات غير ضرورية). 2:4: يعني ابتداءً من العمود رقم 2 وحتى العمود رقم 3. وهكذا يتم اختيار العمودين الثاني والثالث مع تجاوز أول ثلاث صفوف في كل منها. 1 اقتباس
0 Ahmed Ahmed64 نشر 19 يناير الكاتب أرسل تقرير نشر 19 يناير (معدل) بتاريخ 7 دقائق مضت قال Adnane Kadri: الجزء df.iloc[3:, 2:4] يستخدم لتحديد جزء معين من DataFrame باستخدام تقديم الصفوف والأعمدة المحددة. فـ: 3:: يعني ابتداءً من الصف رقم 3 وحتى نهاية الصفوف. هذا يتجاوز الصفوف الثلاثة الأولى (التي قد تحتوي على عناوين الأعمدة أو معلومات غير ضرورية). 2:4: يعني ابتداءً من العمود رقم 2 وحتى العمود رقم 3. وهكذا يتم اختيار العمودين الثاني والثالث. لنفترض أني لا أريد عمود معين فهذا لا ينجح ( 2:4: يعني ابتداءً من العمود رقم 2 وحتى العمود رقم 3. ) أحيانا قد أحتاج عمود 2 و 3 وأتجاهل 4 وأحتاج العمود 5 فكيف أقوم بذلك كما أن لدي استفسار أخر هل العد يبدأ من 0 أو 1 بالنسبه للأعمدة والصفوف تم التعديل في 19 يناير بواسطة Ahmed Ahmed64 اقتباس
0 Adnane Kadri نشر 19 يناير أرسل تقرير نشر 19 يناير بتاريخ 7 دقائق مضت قال Ahmed Ahmed64: لنفترض أني لا أريد عمود معين فهذا لا ينجح ( 2:4: يعني ابتداءً من العمود رقم 2 وحتى العمود رقم 3. ) أحيانا قد أحتاج عمود 2 و 3 وأتجاهل 4 وأحتاج العمود 5 فكيف أقوم بذلك يمكنك استخدام قوس مربعي فارغ لتحديد الصفوف الكل (:) واختيار الأعمدة المطلوبة. على سبيل المثال، إذا كنت تريد اختيار العمودين 2 و 3 وتجاهل العمود 4 وتحتاج العمود 5، يمكنك القيام بذلك كما يلي: selected_columns = df.iloc[3:, [2, 3, 5]] سيشتمل هذا على الصفوف من الصف 3 وما بعدها، والأعمدة 2 و 3 و 5. 1 اقتباس
0 Ahmed Ahmed64 نشر 19 يناير الكاتب أرسل تقرير نشر 19 يناير (معدل) بتاريخ 8 دقائق مضت قال Adnane Kadri: يمكنك استخدام قوس مربعي فارغ لتحديد الصفوف الكل (:) واختيار الأعمدة المطلوبة. على سبيل المثال، إذا كنت تريد اختيار العمودين 2 و 3 وتجاهل العمود 4 وتحتاج العمود 5، يمكنك القيام بذلك كما يلي: selected_columns = df.iloc[3:, [2, 3, 5]] سيشتمل هذا على الصفوف من الصف 3 وما بعدها، والأعمدة 2 و 3 و 5. كما أن لدي استفسار أخر وأسف على الإطالة أخي هل العد يبدأ من 0 أو 1 بالنسبة للأعمدة والصفوف تم التعديل في 19 يناير بواسطة Ahmed Ahmed64 اقتباس
0 Adnane Kadri نشر 19 يناير أرسل تقرير نشر 19 يناير بتاريخ 6 دقائق مضت قال Ahmed Ahmed64: كما أن لدي استفسار أخر هل العد يبدأ من 0 أو 1 بالنسبه للأعمدة والصفوف العد يبدأ من الصفر لكل من الصفوف والأعمدة. لذا، الصف الأول يمثله الرقم 0، والعمود الأول يمثله الرقم 0 وهكذا .. 1 اقتباس
0 Ahmed Ahmed64 نشر 19 يناير الكاتب أرسل تقرير نشر 19 يناير (معدل) بتاريخ 15 دقائق مضت قال Adnane Kadri: العد يبدأ من الصفر لكل من الصفوف والأعمدة. لذا، الصف الأول يمثله الرقم 0، والعمود الأول يمثله الرقم 0 وهكذا .. أخي لنفترض أن لدي عمود وليكن العمود 3 أحتاج أن أقرأ منه سطر وأتجاهل السطر الذي يله وهكذا حتى أخر العمود كيف يتم ذلك وباقي الأعمدة يتم قراءة كل الأسطر أرجو التعديل هنا على هذا الكود لكي أفهم التعديل أين يتم selected_columns = df.iloc[3:, [2, 3, 5]] أسف على الإطالة معك في الحقيقة لقد أوضحت لي الكثير تم التعديل في 19 يناير بواسطة Ahmed Ahmed64 اقتباس
0 El Sayed El Tohamy نشر 19 يناير أرسل تقرير نشر 19 يناير وماذا عن القيم الفارغة؟ لأنك ستحصل على عدد غير متساوٍ من الصفوف؟ هل تقصد أن الصفوف التي لا يقرأها يجعلها فارغة؟ إذا كان كذلك، يمكنك تنفيذه عن طريق: قراءة كل الملف، ثم تحديد الصفوف المراد إخفاؤها وجعلها فارغة df.iloc[1::2, :] = np.nan اقتباس
0 Ahmed Ahmed64 نشر 19 يناير الكاتب أرسل تقرير نشر 19 يناير بتاريخ 1 دقيقة مضت قال El Sayed El Tohamy: وماذا عن القيم الفارغة؟ لأنك ستحصل على عدد غير متساوٍ من الصفوف؟ هل تقصد أن الصفوف التي لا يقرأها يجعلها فارغة؟ إذا كان كذلك، يمكنك تنفيذه عن طريق: قراءة كل الملف، ثم تحديد الصفوف المراد إخفاؤها وجعلها فارغة df.iloc[1::2, :] = np.nan عفواً لم يكن هكذا السؤال أقصد أن يقفز سطر كا التالي df.iloc[3::2, [2,3,5,]] هنا القفز لجميع الأعمدة ولاكن أحتاج أن يكون القفز داخل أحد الأعمدة فقط كيف أقوم التعديل إذا على هذا الكود selected_columns = df.iloc[3:, [2, 3, 5]] اقتباس
0 El Sayed El Tohamy نشر 19 يناير أرسل تقرير نشر 19 يناير (معدل) إذن ستكون هناك قيم فارغة في العمود الذي نقفر فيه، فإذا كان لدينا عشرون صفًا، فسيظهروا جميعًا مع كل الأعمدة، ما عدا العمود الأول يظهر به عشرة صفوف فقط لأننا، فكيف تريد عرضها؟ أعط مثالًا حتى تكون الصورة واضحة. تم التعديل في 19 يناير بواسطة El Sayed El Tohamy 1 اقتباس
0 Ahmed Ahmed64 نشر 19 يناير الكاتب أرسل تقرير نشر 19 يناير بتاريخ 54 دقائق مضت قال El Sayed El Tohamy: إذن ستكون هناك قيم فارغة في العمود الذي نقفر فيه، فإذا كان لدينا عشرون صفًا، فسيظهروا جميعًا مع كل الأعمدة، ما عدا العمود الأول يظهر به عشرة صفوف فقط لأننا، فكيف تريد عرضها؟ أعط مثالًا حتى تكون الصورة واضحة. كيف أقوم إجراء عملية على عمودين باستدعاء رقم العمود وليس اسم العمود هل هذا الكود صحيح هكذا Table1['المجموع الكلي'] = Table1[1] + Table1[2] اقتباس
0 El Sayed El Tohamy نشر 19 يناير أرسل تقرير نشر 19 يناير بتاريخ 40 دقائق مضت قال Ahmed Ahmed64: Table1['المجموع الكلي'] = Table1[1] + Table1[2] نعم الشيفرة صحيحة، المفترض تعمل بشكل صحيح، هذا بفرض أن Table1عبارة عن DataFrame 1 اقتباس
السؤال
Ahmed Ahmed64
السلام عليكم ورحمة الله وبركاته
جمعة طيبة للجميع
في البداية أحب أن أشكر كل من ساهم في تلقيني معلومة في هذا الصرح العلمي والذي عن نفسي استفدت منه كثيراُ
إخوتي لقد تكونت لدي مجموعة من الأفكار عن كتابة الكود ولاكن في بعض الأحيان أكون عاجز عن استكماله
الأن أحاول تصميم DataFrame من جدول Excel
في البداية لكي تكون الصورة واضحة لكم
الجدول يتكون من مجموعة كبيرة من الأعمدة ليس لها عنوان .... لنفترض أن الصف الأول حتى الصف الثالث لا يحتوي أي بيانات ،،، أود أن أقوم بإنشاءDataFrame
في البداية قمت بي بقراءة الملف هكذا
مثلا أود أن أقرأ العمود 3 قمت بذلك
أود أيضا أن أقرأ العمود 4 قمت بذلك
الأن سؤالي كيف أقوم بتكوين DataFrame من هذه الأعمدة مع إعطاء اسم فهرس لكل عمود حتى أتعامل به في المستقبل
هل الكود هكذا به مشكلة إن كان كتابة الكود غير سليم فأرجو شرح كيف أقوم بهذا
تم التعديل في بواسطة Ahmed Ahmed6413 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.