الباندا: كيفية الاستعلام عن اسم عمود بمسافة


يمكنك استخدام بناء الجملة التالي لإجراء استعلام الباندا باستخدام اسم عمود مع مسافة:

 df. query (' `this column` == 20 ')

لاحظ أنه يجب عليك استخدام علامات الاقتباس ( ` ) في الاستعلام بدلاً من علامات الاقتباس المزدوجة.

يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.

مثال: عمود الاستعلام في Pandas DataFrame مع مسافة

لنفترض أن لدينا DataFrame الباندا التالية التي تحتوي على معلومات حول مختلف لاعبي كرة السلة:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G'], 
                    ' points scored ': [12, 20, 40, 20, 24, 10, 31]}) 

#view DataFrame
print (df)

  team points scored
0 to 12
1 B 20
2 C 40
3 D 20
4 E 24
5 F 10
6 G 31

لنفترض الآن أننا نريد الاستعلام عن الصفوف التي يساوي فيها عمود النقاط المحددة 20.

إذا استخدمنا الدالة query() مع علامات الاقتباس، فسوف نتلقى خطأً:

 #attempt to get rows where points scored column is equal to 20
df. query (' "points scored" == 20 ')

TypeError: argument of type 'int' is not iterable

بدلًا من ذلك، نحتاج إلى استخدام الدالة query() ‎ مع علامات التحديد الخلفية:

 #get rows where points scored column is equal to 20
df. query (' `points scored` == 20 ')

	team points scored
1 B 20
3 D 20

يقوم الاستعلام بإرجاع صفين من DataFrame حيث يساوي عمود النقاط المميزة 20.

لاحظ أننا لا نتلقى أي أخطاء إما لأننا استخدمنا علامات الاقتباس بدلاً من علامات الاقتباس في الدالة query() .

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في الباندا:

الباندا: كيفية تصفية الصفوف بناءً على طول السلسلة
الباندا: كيفية حذف الصفوف بناءً على الحالة
الباندا: كيفية استخدام مرشح “NO IN”.

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *