Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

दिए गए डेटाफ्रेम में सिटी कॉलम एलिमेंट से यूनिक प्रीफिक्स हटाकर फ़िल्टर करने के लिए पायथन प्रोग्राम लिखें


मान लें आपके पास एक डेटाफ्रेम है, यूनिक प्रीफिक्स सिटी नाम हटाने का परिणाम:

   Id   City
2   3   Kolkata
3   4   Hyderabad
6   7   Haryana
8   9   Kakinada
9   10  Kochin

इसे हल करने के लिए, हम नीचे दिए गए चरणों का पालन करेंगे:

समाधान

  • एक डेटाफ्रेम परिभाषित करें

  • सभी सिटी कॉलम मानों के पहले कैरेक्टर को जोड़ने के लिए एक खाली सूची बनाएं

l = []
for x in df['City']:
    l.append(x[0])
  • दोहराए गए कैरेक्टर को फ़िल्टर करने के लिए एक और खाली सूची बनाएं

फॉर लूप और if शर्त सेट करके यूनिक कैरेक्टर जोड़ें। इसे नीचे परिभाषित किया गया है:

l1 = []
for j in l:
    if l.count(j) > 1:
        if j not in l1:
            l1.append(j)
  • एक और खाली सूची बनाएं। सिटी कॉलम मानों तक पहुंचने के लिए फॉर लूप सेट करें और जांचें कि एलिमेंट का पहला कैरेक्टर l1 में मौजूद है तो दूसरी सूची में जोड़ें।

l2 = []
for x in df['City']:
    if x[0] in l1:
        l2.append(x)
  • अंत में, isin() का उपयोग करके l2 एलिमेंट सिटी कॉलम में मौजूद हैं या नहीं सत्यापित करें और डेटाफ्रेम प्रिंट करें।

df[df['City'].isin(l2)]

उदाहरण

बेहतर समझ के लिए निम्न कोड देखें:

import pandas as pd
df = pd.DataFrame({'Id':[1,2,3,4,5,6,7,8,9,10],
    'City':['Chennai','Delhi','Kolkata','Hyderabad','Pune','Mumbai','Haryana','Bengaluru','Kakinada','Kochin']})
l = []
for x in df['City']:
    l.append(x[0])
l1 = []
for j in l:
    if l.count(j) > 1:
        if j not in l1:
            l1.append(j)
l2 = []
for x in df['City']:
    if x[0] in l1:
        l2.append(x)
print(df[df['City'].isin(l2)])

आउटपुट

   Id   City
2   3   Kolkata
3   4   Hyderabad
6   7   Haryana
8   9   Kakinada
9   10  Kochin
  1. - पायथन प्रोग्राम: Series के प्रत्येक तत्व की घात (Power) की गणना करें

    समस्या विवरण Series के प्रत्येक तत्व x के लिए x^x (x की घात x) की गणना करें। इनपुट Series 0 1 1 2 2 3 3 4 dtype: int64 अपेक्षित आउटपुट 0 1 1 4 2 27 3 256 dtype: int64 समाधान 1: transform() और lambda (सुझावित) import pandas as pd l = [1,2,3,4] data = pd.Series(l) res

  1. - पायथन प्रोग्राम: Series के सभी तत्वों को अवरोही क्रम में सॉर्ट करें

    समस्या विवरण स्ट्रिंग Series के सभी तत्वों को अवरोही (descending) क्रम में सॉर्ट करें। इनपुट Series 0 abdef 1 ijkl 2 Abdef 3 oUijl dtype: object अपेक्षित आउटपुट 3 oUijl 1 ijkl 0 abdef 2 Abdef dtype: object समाधान sort_values(ascending=False) विधि का उपयोग करें। पूर्ण कोड

  1. - पायथन प्रोग्राम: Series से केवल पूर्णांक तत्व फ़िल्टर करें

    समस्या विवरण मिश्रित प्रकार की Series से केवल पूर्णांक (int) प्रकार के तत्व निकालें। इनपुट Series 0 1 1 2 2 python 3 pandas 4 3 5 4 6 5 dtype: object अपेक्षित आउटपुट 0 1 1 2 4 3 5 4 6 5 dtype: object समाधान 1: लूप और type() जांच import pandas as pd ls = [1,2,p