تعتبر أصول البيانات الكبيرة فوضوية ، خاصةً عندما يتعين عليك سحبها من مواقع الويب أو الخوادم أو مصادر البيانات الأخرى.

تعد التطبيقات المستندة إلى واجهة المستخدم مثل MS Excel جيدة للتعامل مع مجموعات البيانات البسيطة ، ولكنها قد تواجه صعوبة عندما تصبح البيانات أكبر. هذا سبب وجيه للانتقال إلى Python لإجراء عمليات أكثر تعقيدًا قائمة على البيانات.

تقطع مكتبة Pandas التابعة لجهة خارجية في Python شوطًا طويلاً في مساعدتك على فرز مجموعات البيانات الحالية بسرعة. إذا كنت تبحث عن فرز بياناتك في Python ، فإن هذه المقالة تبحث في بعض الطرق لتحقيق هذه المهمة.

المتطلبات الأساسية لاستخدام Python لفرز البيانات

قبل فرز بياناتك في Python ، عليك الاهتمام ببعض المتطلبات الأساسية:

  • قم بتنزيل Python IDE. يمكنك استخدام ملف IDE متوافق مع Python، مثل Jupyter Notebook و PyCharm و Spyder وغيرها. كل منها متوافق مع جميع إصدارات Python.
  • تثبيت الباندا. ستحتاج إلى حزمة الباندا التي تستطيع التثبيت باستخدام PIP أو طريقتك المفضلة.
  • عينة مجموعة بيانات. تنزيل a عينة مجموعة البيانات لممارسة الرموز المدرجة. بدلاً من ذلك ، يمكنك استخدام هذه الإجراءات على بياناتك الحصرية.
instagram viewer

استيراد مكتبة الباندا في بايثون

Pandas هي مكتبة Python تابعة لجهة خارجية يمكنك استخدامها للتعامل مع Excel و CSV وتنسيقات البيانات الأخرى.

للعمل مع نموذج ملف Excel ، ابدأ باستيراد مكتبة الباندا. بعد ذلك ، ستستخدم ملف إجراء الاستيراد لقراءة بيانات Excel إلى لغة Python.

لاستيراد المكتبة

يستورد الباندا كما pd

قم بإنشاء DataFrame جديد لتحميل بيانات Excel

ملف = "عينة - Superstore.xls"
df = pd.read_excel (ملف)
مدافع.رأس()

أين:

  • مدافع هو كائن DataFrame يخزن البيانات المستوردة.
  • pd هو اسم مستعار لمكتبة الباندا.
  • read_excel هي طريقة لقراءة ملف Excel في لغة Python.
  • ملف هو مسار إلى ملف Excel.
  • رأس هي طريقة تُرجع الصفوف الخمسة الأولى من DataFrame.

بمجرد أن يقوم برنامجك بتحميل البيانات ، يمكنك استخدام العديد من طرق DataFrame المتاحة لفرزها بطرق مختلفة.

1. الفرز حسب عمود واحد في DataFrame

نظرًا لأن بياناتك ستتضمن عددًا كبيرًا من الصفوف والأعمدة ، فغالبًا ما تريد فرز البيانات استنادًا إلى عمود أو أعمدة معينة.

يفرز Python البيانات بترتيب تصاعدي افتراضيًا. إذا كنت تريد تغيير ترتيب الفرز ، فيجب عليك ذكره صراحةً في التعليمات البرمجية الخاصة بك.

الفرز بعمود واحد (ترتيب تصاعدي)

df.sort_values ​​(بواسطة = "هوية الزبون")

الفرز حسب عمود واحد (ترتيب تنازلي)

تعيين تصاعدي المعلمة ل خطأ شنيع لفرز العمود الخاص بك بترتيب تنازلي.

df.sort_values ​​(بواسطة = "هوية الزبون"تصاعدي = خطأ)

أين:

  • مدافع هو كائن DataFrame يحتوي على البيانات.
  • ترتيب_القيم هي طريقة للفرز حسب قيم البيانات.
  • بواسطة هي معلمة لتحديد اسم العمود.
  • تصاعدي هي معلمة لتحديد ترتيب الفرز.

2. فرز أعمدة متعددة في DataFrame

إذا كانت متطلباتك تتطلب ذلك ، يمكنك أيضًا فرز إطار (إطارات) البيانات الخاصة بك استنادًا إلى أعمدة متعددة في وقت واحد. في مثل هذا السيناريو ، يجب عليك تحديد مراجع الأعمدة في قائمة.

الفرز حسب الأعمدة المتعددة تصاعديًا

df.sort_values ​​(بواسطة = ["هوية الزبون", "مدينة"])

الفرز حسب الأعمدة المتعددة تنازلياً

استخدم الوظيفة تصاعدي = خطأ لفرز الأعمدة بترتيب تنازلي. تذكر أنك تحتاج إلى تحديد أسماء الأعمدة داخل قائمة لفرزها في وقت واحد.

df.sort_values ​​(بواسطة = ["هوية الزبون", "مدينة"] ، تصاعدي = خطأ)

الفرز حسب الأعمدة المتعددة في ترتيبات الفرز المختلفة

مع أساسيات الفرز بعيدًا ، ماذا يحدث عندما تريد فرز عمود واحد بترتيب تنازلي وآخر بترتيب تصاعدي؟ تحتاج إلى تعديل التعليمات البرمجية الخاصة بك قليلاً لتضمين هذه المتطلبات.

على سبيل المثال ، لفرز ملف منطقة و مدينة الأعمدة بترتيب تنازلي وتصاعدي ، على التوالي:

df.sort_values ​​(بواسطة = ["منطقة", "مدينة"] ، تصاعدي = [خطأ ، صحيح])

شرح هذا الرمز بسيط ؛ تقوم بتحديد اسم DataFrame وتمرير الامتداد ترتيب_القيم تعمل جنبًا إلى جنب مع أسماء الأعمدة في القائمة. يجب عليك استخدام ملفات قيمة منطقية القيم لتحديد ترتيب الفرز.

استدعاء الوظيفة مثل هذا يعني أن Python ستفرز حسب عمود منطقة DataFrame بترتيب تنازلي أولاً. بعد ذلك ، سيتم فرز الصفوف ذات المنطقة المتطابقة بشكل أكبر حسب عمود المدينة ، بترتيب تصاعدي.

3. كيفية فرز الأعمدة في DataFrame حسب الفهرس

متغير الفهرس هو القيمة الافتراضية المعينة لكل صف داخل Python Dataframe. يمكنك تحديد قيم الفهرس أو السماح لبايثون بتعيين قيمة فهرس من تلقاء نفسها.

لفرز البيانات حسب قيمة الفهرس الخاصة بها ، يمكنك استخدام ترتيب_الفهرس وظيفة. تقوم هذه الوظيفة بالفرز بناءً على الفهرس بدلاً من أي قيم موجودة في مجموعة البيانات الأصلية.

مدافع.sort_index()

كما هو الحال مع sort_values ​​، يمكنك تمرير امتداد تصاعدي معلمة لتحديد اتجاه الفرز. على سبيل المثال ، قم بتمرير قيمة خطأ شنيع لفرز البيانات بترتيب تنازلي:

df.sort_index (تصاعدي = خطأ شنيع)

4. فرز الأعمدة في DataFrame بدلاً من الصفوف

بدلاً من فرز الصفوف في DataFrame ، يمكنك فرز أعمدتها. يمكنك القيام بذلك عن طريق استدعاء طريقة sort_index وتمريرها بامتداد محور المعلمة بقيمة 1:

df.sort_index (المحور = 1)

تقوم هذه الخطوة بفرز DataFrame ، حسب أعمدتها ، بترتيب تصاعدي. لفرز أعمدة DataFrame بترتيب تنازلي ، يمكنك تحديد ترتيب الفرز في خطوة الفرز.

df.sort_index (المحور =1تصاعدي = خطأ شنيع)

5. تعديل DataFrame أثناء الفرز

تعمل طريقتا الفرز عن طريق إرجاع نسخة من البيانات الأصلية ، في حالتها المصنفة حديثًا. لتوفير مساحة التخزين ، أو ببساطة لكتابة تعليمات برمجية أكثر إيجازًا ، يمكنك تعديل بيانات DataFrame الأصلية بدلاً من ذلك. كل طريقة تقبل ملف في المكان المعلمة المنطقية التي تعدل البيانات بدلاً من إرجاع نسخة معدلة.

df.sort_values ​​(بواسطة = ["هوية الزبون", "مدينة"] ، تصاعدي = خطأ ، في المكان = صحيح)

تعلم فرز البيانات في بايثون

يكرر Python العديد من وظائف Excel المضمنة ببضعة أسطر من التعليمات البرمجية. من إجراءات الفرز إلى إنشاء جداول Pivot مفصلة على بياناتك ، سمها ما شئت ، ويمكنك القيام بذلك في Python.

إذا كنت لا تزال جديدًا على Python وتتعلم الحبال ، فستعمل هذه الخطوات على تحسين مهاراتك في الترميز بسهولة نسبيًا.