الباندا: كيفية الحصول على فهرس العمود من اسم العمود
يمكنك استخدام الطرق التالية للحصول على قيمة فهرس العمود من اسم العمود في الباندا:
الطريقة الأولى: الحصول على فهرس العمود لاسم العمود
df. columns . get_loc (' this_column ')
الطريقة الثانية: الحصول على فهرس الأعمدة لأسماء الأعمدة المتعددة
cols = [' this_column ', ' that_column '] [df. columns . get_loc (c) for c in cols if c in df]
توضح الأمثلة التالية كيفية استخدام كل طريقة عمليًا مع الباندا DataFrame التالية:
import pandas as pd #createDataFrame df = pd. DataFrame ({' store ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' sales ': [18, 10, 14, 13, 19, 24, 25, 29], ' returns ': [1, 2, 2, 3, 2, 3, 5, 4], ' recalls ': [0, 0, 2, 1, 1, 2, 0, 1]}) #view DataFrame print (df) store sales returns recalls 0 to 18 1 0 1 to 10 2 0 2 A 14 2 2 3 A 13 3 1 4 B 19 2 1 5 B 24 3 2 6 B 25 5 0 7 B 29 4 1
مثال 1: الحصول على فهرس العمود لاسم العمود
يوضح التعليمة البرمجية التالية كيفية الحصول على قيمة فهرس العمود للعمود المسمى “Returns”:
#get column index for column with the name 'returns' df. columns . get_loc (' returns ') 2
يحتوي العمود الذي يحمل الاسم “return” على قيمة فهرس عمود تبلغ 2 .
ملحوظة : تبدأ قيم فهرس الأعمدة من 0 في بايثون. لذا، نظرًا لأن “return” هو العمود الثالث في DataFrame، فإن قيمة الفهرس الخاصة به هي 2.
مثال 2: الحصول على فهرس العمود لأسماء أعمدة متعددة
يوضح التعليمة البرمجية التالية كيفية الحصول على قيمة فهرس العمود لأعمدة متعددة في DataFrame:
#define list of columns to get index for cols = [' store ', ' returns ', ' recalls '] #get column index for each column in list [df. columns . get_loc (c) for c in cols if c in df] [0, 2, 3]
ومن النتيجة يمكننا أن نرى:
- يحتوي العمود الذي يحمل اسم “المتجر” على قيمة فهرس عمود تبلغ 0 .
- يحتوي العمود الذي يحمل الاسم “return” على قيمة فهرس عمود تبلغ 2 .
- يحتوي العمود المسمى “التذكيرات” على قيمة فهرس عمود تبلغ 3 .
ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة pandas get_loc() هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في الباندا:
كيفية الحصول على قيمة الخلية من Pandas DataFrame
كيفية إعادة تسمية الفهرس في Pandas DataFrame
كيفية فرز الأعمدة حسب الاسم في الباندا