टेक में नवाचार ऐप विकास क्षेत्र को कैसे सशक्त बना रहा है? 1

अपने पंडों के डेटाफ़्रेम को कैसे क्वेरी करें

स्रोत नोड: 1017694

अपने पंडों के डेटाफ़्रेम को कैसे क्वेरी करें

SQL-जैसे पायथन फ़ंक्शंस पर एक डेटा वैज्ञानिक का दृष्टिकोण।


By मैथ्यू Przybyla, सीनियर डेटा साइंटिस्ट फ़ेवर डिलीवरी पर



द्वारा फोटो ब्रूस होंग on Unsplash [1]

विषय - सूची

 
 

  1. परिचय
  2. एकाधिक शर्तें
  3. एकाधिक, विशिष्ट स्तंभों पर विलय
  4. सारांश
  5. संदर्भ

परिचय

 
 
चाहे आप डेटा इंजीनियर/डेटा विश्लेषक से बदलाव कर रहे हों या अधिक कुशल डेटा वैज्ञानिक बनना चाहते हों, आपके डेटाफ़्रेम को क्वेरी करना आपके इच्छित विशिष्ट पंक्तियों को वापस करने का एक उपयोगी तरीका साबित हो सकता है। यह ध्यान रखना महत्वपूर्ण है कि पांडा के लिए एक विशिष्ट क्वेरी फ़ंक्शन है, जिसे उचित नाम दिया गया है, query. हालाँकि, मैं इसके बजाय उन अन्य तरीकों पर चर्चा करूँगा जिनसे आप अपने डेटा को क्वेरी करने, फ़िल्टर करने और मर्ज करने की नकल कर सकते हैं। हम सामान्य परिदृश्य या प्रश्न प्रस्तुत करेंगे जो आप अपने डेटा से पूछेंगे, और SQL के बजाय, हम इसे Python के साथ करेंगे। नीचे दिए गए पैराग्राफ में, मैं पायथन प्रोग्रामिंग भाषा के साथ आपके पांडा डेटाफ्रेम के लिए पंक्तियों को क्वेरी करने के कुछ सरल तरीकों की रूपरेखा तैयार करूंगा।

एकाधिक शर्तें

 
 



नमूना डेटा। लेखक का स्क्रीनशॉट [2]।

 

डेटा वैज्ञानिक या डेटा विश्लेषक के रूप में, हम डेटा की विशिष्ट पंक्तियाँ लौटाना चाहते हैं। इनमें से एक परिदृश्य वह है जहां आप कोड की एक ही पंक्ति में कई शर्तें लागू करना चाहते हैं। अपना उदाहरण प्रदर्शित करने के लिए, मैंने पहले और अंतिम नाम के साथ-साथ उनके संबंधित लिंग और जन्मतिथि के कुछ नकली नमूना डेटा बनाए हैं। यह डेटा ऊपर स्क्रीनशॉट में प्रदर्शित है।

उदाहरण की एकाधिक स्थितियाँ अनिवार्य रूप से एक विशिष्ट प्रश्न का उत्तर देंगी, ठीक वैसे ही जैसे जब आप SQL का उपयोग करते हैं। सवाल यह है कि हमारे डेटा का कितना प्रतिशत पुरुष लिंग है OR एक व्यक्ति जिसका जन्म 2010 और 2021 के बीच हुआ है।

यहां वह कोड है जो उस प्रश्न को हल करेगा (इस प्रश्न का उत्तर देने के कुछ तरीके हैं, लेकिन इसे करने का मेरा विशिष्ट तरीका यहां है):

print(“Percent of data who are Males OR were born between 2010 and 2021:”, 100*round(df[(df[‘Gender’] == ‘M’) | (df[‘Birthdate’] >= ‘2010–01–01’) & (df[‘Birthdate’] <= ‘2021–01–01’)][‘Gender’].count()/df.shape [0],4), “%”)

इस कोड को बेहतर ढंग से देखने के लिए, मैंने आउटपुट/परिणाम के साथ ऊपर से उसी कोड का स्क्रीनशॉट भी शामिल किया है। आप कुल पंक्तियों में से पंक्तियों का अंश या प्रतिशत निकालने के बजाय वास्तविक पंक्तियों को वापस लाने के लिए भी इन शर्तों को लागू कर सकते हैं।



शर्तें कोड. लेखक द्वारा स्क्रीनशॉट [3]।

 

हमारे द्वारा निष्पादित आदेशों का क्रम यहां दिया गया है:

  • पुरुष के साथ पंक्तियाँ लौटाएँ Gender
  • को शामिल करें OR समारोह |
  • की पंक्तियाँ लौटाएँ Birthdate > 2010 और 2021
  • उन सभी को मिलाएं, और फिर पंक्तियों की कुल संख्या से विभाजित करें

जैसा कि आप देख सकते हैं, यह कोड कुछ वैसा ही है जैसा आप SQL में देखेंगे। मैं व्यक्तिगत रूप से सोचता हूं कि पांडा में यह आसान है क्योंकि इसमें कम कोड हो सकते हैं, साथ ही ऊपर और नीचे स्क्रॉल किए बिना सभी कोड को एक आसान स्थान पर देखने में सक्षम होना (लेकिन यह प्रारूप सिर्फ मेरी प्राथमिकता है).

एकाधिक, विशिष्ट स्तंभों पर विलय

 
 



मर्ज किए गए डेटाफ़्रेम परिणाम। लेखक द्वारा स्क्रीनशॉट [4]।

 

हमने संभवतः अन्य ट्यूटोरियल्स में देखा है कि डेटाफ़्रेम को एक साथ कैसे मर्ज किया जाता है, इसलिए मैं एक अनूठा दृष्टिकोण जोड़ना चाहता था जो मैंने वास्तव में वहां नहीं देखा है, जो कई, विशिष्ट कॉलमों पर विलय कर रहा है। इस परिदृश्य में, हम दो डेटाफ़्रेमों को जोड़ना चाहते हैं जहाँ उनके बीच दो फ़ील्ड साझा किए जाते हैं। आप बता सकते हैं कि यदि और भी अधिक कॉलम हैं, तो यह विधि और भी उपयोगी हो सकती है।

हमारे पास हमारा पहला डेटाफ़्रेम है, जो df है, फिर हम अपने कॉलम को दूसरे डेटाफ़्रेम, df2 पर मर्ज कर रहे हैं। हमारा अपेक्षित परिणाम प्राप्त करने के लिए वह कोड यहां दिया गया है:

merged_df = df.merge(df2, how=’inner’, left_on=cols, right_on=cols )

इस विलय और कोड को बेहतर ढंग से देखने के लिए, मैंने नीचे स्क्रीनशॉट प्रस्तुत किया है। आप नीचे देखें कि दूसरा डेटाफ़्रेम कैसा दिखता है First और Last नाम, जैसे वे पहले डेटाफ़्रेम में हैं, लेकिन एक नए कॉलम के साथ, Numeric. फिर, हमारे पास विशिष्ट कॉलम हैं जिन्हें हम कॉलम लौटाते समय मर्ज करना चाहते थे GenderBirthdate, और नया Numeric कॉलम भी. कॉलम, कॉलमों की एक सूची है, जिसे नाम दिया गया है cols.



डेटाफ़्रेम को मर्ज करना। लेखक द्वारा स्क्रीनशॉट [5]।

 

जैसा कि आप देख सकते हैं, डेटाफ़्रेम को मर्ज करने का यह तरीका वही परिणाम प्राप्त करने का एक सरल तरीका है जो आप SQL क्वेरी से प्राप्त करेंगे।

सारांश

 
 
इस ट्यूटोरियल में, हमने दो सामान्य प्रश्न या क्वेरीज़ देखीं जिन्हें आप SQL में निष्पादित करेंगे, लेकिन इसके बजाय, हमने उन्हें Python में पांडा डेटाफ़्रेम के साथ निष्पादित किया है।

संक्षेप में कहें तो, यहां वे दो परिदृश्य हैं जिनके साथ हमने काम किया है:

  1. एकाधिक स्थितियों से कुल डेटासेट में से पंक्तियों का प्रतिशत लौटाना
  2. एक नए कॉलम के साथ अंतिम डेटाफ्रेम वापस करने के लिए एकाधिक, विशिष्ट कॉलमों को मर्ज करना

मुझे आशा है कि आपको मेरा लेख रोचक और उपयोगी दोनों लगा होगा। यदि आप इन तरीकों से सहमत या असहमत हैं तो कृपया बेझिझक नीचे टिप्पणी करें। क्यों या क्यों नहीं? इन्हें निश्चित रूप से और भी अधिक स्पष्ट किया जा सकता है, लेकिन मुझे आशा है कि मैं उन कुछ तरीकों पर कुछ प्रकाश डालने में सक्षम था जिनसे आप SQL के बजाय पांडा और पायथन का उपयोग कर सकते हैं। पढ़ने के लिए आपका शुक्रिया!

कृपया बेझिझक मेरी प्रोफ़ाइल देखें, मैट प्रिज़ीबला, और अन्य लेख, साथ ही लिंक्डइन पर मुझसे संपर्क करें।

मैं इन कंपनियों से संबद्ध नहीं हूं.

 
संदर्भ

[1] फोटो द्वारा ब्रूस होंग on Unsplash(2018)

[2] एम. प्रिज़ीबायला, नमूना डेटा स्क्रीनशॉट, (2021)

[3] एम. प्रिज़ीबायला, शर्तें कोड स्क्रीनशॉट, (2021)

[4] एम. प्रिज़ीबायला, मर्ज किए गए डेटाफ़्रेम परिणाम स्क्रीनशॉट, (2021)

[5] एम. प्रिज़ीबायला, डेटाफ़्रेम स्क्रीनशॉट को मर्ज करना, (2021)

 
जैव: मैथ्यू Przybyla फ़ेवर डिलीवरी में वरिष्ठ डेटा वैज्ञानिक और विशेष रूप से डेटा विज्ञान में एक स्वतंत्र तकनीकी लेखक हैं।

मूल। अनुमति के साथ पुनर्प्रकाशित।

संबंधित:



शीर्ष आलेख पिछले 30 दिन
सबसे लोकप्रिय
  1. 6 में शीर्ष 2021 डेटा विज्ञान ऑनलाइन पाठ्यक्रम
  2. डेटा वैज्ञानिक और एमएल इंजीनियर लक्जरी कर्मचारी हैं
  3. Google के अनुसंधान निदेशक से डेटा विज्ञान सीखने की सलाह
  4. GitHub Copilot ओपन सोर्स अल्टरनेटिव्स
  5. डीप लर्निंग की ज्यामितीय नींव
सर्वाधिक साझा
  1. आपको "उत्पादक डेटा विज्ञान" क्यों और कैसे सीखना चाहिए?
  2. न केवल डीप लर्निंग के लिए: जीपीयू डेटा साइंस और डेटा एनालिटिक्स को कैसे तेज करता है
  3. टेराफॉर्म के साथ 5 मिनट में एक आधुनिक डेटा स्टैक बूटस्ट्रैप करें
  4. रैपिड्स के साथ जीपीयू-पावर्ड डेटा साइंस (डीप लर्निंग नहीं)
  5. 90 दिनों में एनालिटिक्स इंजीनियर बनें Engineer

स्रोत: https://www.kdnuggets.com/2021/08/query-pandas-dataframe.html

समय टिकट:

से अधिक केडनगेट्स