مقارنة إطارات البيانات: العثور على الصفوف الموجودة في أحدهما ولكن ليس في الآخر
تعد مقارنة إطارات البيانات لتحديد الاختلافات أمرًا بالغ الأهمية لضمان جودة البيانات ودمجها العمليات. في هذه الحالة، لدينا إطاري بيانات (df1 وdf2) لهما بنية محددة ونحتاج إلى تحديد الصفوف الموجودة في df2 ولكن ليس في df1.
في البداية، أدت محاولات مقارنة إطارات البيانات باستخدام df1 != df2 إلى خطأ. يعمل هذا الأسلوب فقط مع إطارات البيانات ذات الصفوف والأعمدة المتطابقة. للعثور على الاختلافات المتماثلة، نحتاج إلى نهج مختلف.
تتضمن إحدى الطرق ربط إطارات البيانات:
df = pd.concat([df1, df2]) df = df.reset_index(drop=True)
ثم قم بتجميع إطار البيانات المتسلسل حسب جميع الأعمدة:
df_gpby = df.groupby(list(df.columns))
بعد ذلك، نحدد السجلات الفريدة من خلال الحصول على قيم الفهرس حيث يوجد صف واحد فقط:
idx = [x[0] for x in df_gpby.groups.values() if len(x) == 1]
باستخدام هذه المؤشرات، يمكننا تصفية إطار البيانات للحصول على النتيجة المطلوبة:
df.reindex(idx)df.reindex(idx)يوفر هذا الأسلوب الصفوف الموجودة في df2 ولكنها غائبة في df1 بناءً على مقارنة فهرس التاريخ وعمود الفاكهة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3