pandas 0.23 - DataFrame.query()

pandas.DataFrame.query




pandas

pandas.DataFrame.query

DataFrame.query(expr, inplace=False, **kwargs) [source]

बूलियन अभिव्यक्ति के साथ एक फ्रेम के कॉलम को क्वेरी करें।

पैरामीटर:

expr : स्ट्रिंग

मूल्यांकन करने के लिए क्वेरी स्ट्रिंग। आप उन्हें @a + b जैसे '@' वर्ण के साथ उपसर्ग करके पर्यावरण में चर का उल्लेख कर सकते हैं।

inplace : बूल

क्या क्वेरी को जगह में डेटा को संशोधित करना चाहिए या एक संशोधित प्रति वापस करनी चाहिए

संस्करण में नया 0.18.0।

kwargs : तानाशाही

pandas.eval() द्वारा स्वीकार किए गए कीवर्ड तर्कों पर पूर्ण विवरण के लिए pandas.eval() लिए दस्तावेज़ देखें।

यह दिखाता है:
q : DataFrame

यह भी देखें

pandas.eval() , DataFrame.eval

टिप्पणियाँ

इस अभिव्यक्ति के मूल्यांकन का परिणाम सबसे पहले DataFrame.loc को दिया जाता है और यदि यह एक बहुआयामी कुंजी (जैसे, एक DataFrame) के कारण विफल हो जाता है, तो परिणाम DataFrame.__getitem__()

यह विधि उत्तीर्ण क्वेरी का मूल्यांकन करने के लिए शीर्ष-स्तर pandas.eval() फ़ंक्शन का उपयोग करती है।

DataFrame.query() विधि डिफ़ॉल्ट रूप से थोड़ा संशोधित पायथन सिंटैक्स का उपयोग करती है। उदाहरण के लिए, & | (बिटवाइज़) ऑपरेटरों के पास अपने बूलियन चचेरे भाई, और or की पूर्वता है। यह वाक्यात्मक रूप से मान्य पायथन है, हालाँकि शब्दार्थ अलग हैं।

आप कीवर्ड तर्क parser='python' पास करके अभिव्यक्ति के शब्दार्थ को बदल सकते हैं। यह पाइथन अंतरिक्ष में मूल्यांकन के समान शब्दार्थ को लागू करता है। इसी तरह, आप एक बैकेंड के रूप में पायथन का उपयोग करके एक अभिव्यक्ति का मूल्यांकन करने के लिए engine='python' पास कर सकते हैं। यह अनुशंसित नहीं है क्योंकि यह इंजन के रूप में numexpr उपयोग करने की तुलना में अक्षम है।

DataFrame.index और DataFrame.columns DataFrame उदाहरण के गुण डिफ़ॉल्ट रूप से क्वेरी नेमस्पेस में रखे जाते हैं, जो आपको फ्रेम में एक सूचकांक के रूप में फ्रेम के सूचकांक और स्तंभ दोनों का इलाज करने की अनुमति देता है। फ़्रेम इंडेक्स के लिए पहचानकर्ता index का उपयोग किया जाता है; आप क्वेरी में इसे पहचानने के लिए इंडेक्स के नाम का भी उपयोग कर सकते हैं। कृपया ध्यान दें कि पायथन कीवर्ड का उपयोग पहचानकर्ता के रूप में नहीं किया जा सकता है।

आगे के विवरणों और उदाहरणों के लिए query प्रलेखन को indexing

उदाहरण

>>> from numpy.random import randn
>>> from pandas import DataFrame
>>> df = pd.DataFrame(randn(10, 2), columns=list('ab'))
>>> df.query('a > b')
>>> df[df.a > df.b]  # same result as the previous expression