पांडा: जांचें कि क्या एक डेटाफ़्रेम की पंक्ति दूसरे डेटाफ़्रेम में मौजूद है


आप पांडा डेटाफ़्रेम में एक नया कॉलम जोड़ने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं जो इंगित करता है कि प्रत्येक पंक्ति किसी अन्य डेटाफ़्रेम में मौजूद है या नहीं:

 #merge two DataFrames on specific columns
all_df = pd. merge (df1, df2, on=[' column1 ', ' column2 '], how=' left ', indicator=' exists ')

#drop unwanted columns
all_df = all_df. drop (' column3 ', axis= 1 )

#add column that shows if each row in one DataFrame exists in another
all_df[' exists '] = np. where (all_df. exists == ' both ', True , False )

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।

उदाहरण: जांचें कि क्या एक पांडा डेटाफ़्रेम में एक पंक्ति दूसरे में मौजूद है

आइए मान लें कि हमारे पास निम्नलिखित दो पांडा डेटाफ़्रेम हैं:

 import pandas as pd

#create first DataFrame
df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E'], 
                    ' points ': [12, 15, 22, 29, 24]}) 

print (df1)

  team points
0 to 12
1 B 15
2 C 22
3 D 29
4 E 24

#create second DataFrame
df2 = pd. DataFrame ({' team ': ['A', 'D', 'F', 'G', 'H'],
                    ' points ': [12, 29, 15, 19, 10],
                    ' assists ': [4, 7, 7, 10, 12]})

print (df2)

  team points assists
0 to 12 4
1 D 29 7
2 F 15 7
3 G 19 10
4:10:12

हम पहले डेटाफ़्रेम में मौजूद नामक कॉलम जोड़ने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं जो इंगित करता है कि टीम में प्रत्येक मान और प्रत्येक पंक्ति में पॉइंट कॉलम दूसरे डेटाफ़्रेम में मौजूद है या नहीं:

 import numpy as np

#merge two dataFrames and add indicator column
all_df = pd. merge (df1, df2, on=[' team ', ' points '], how=' left ', indicator=' exists ')

#drop assists columns
all_df = all_df. drop (' assists ', axis= 1 )

#add column to show if each row in first DataFrame exists in second
all_df[' exists '] = np. where (all_df. exists == ' both ', True , False )

#view updated DataFrame
print (all_df)

  team points exists
0 A 12 True
1 B 15 False
2 C 22 False
3 D 29 True
4 E 24 False

नया कॉलम मौजूद है जो इंगित करता है कि टीम में प्रत्येक मान और प्रत्येक पंक्ति में पॉइंट कॉलम दूसरे डेटाफ़्रेम में मौजूद है या नहीं।

परिणाम से हम देख सकते हैं:

  • दूसरे डेटाफ़्रेम में A का एक टीम मान और 12 का एक अंक मान मौजूद है।
  • दूसरे डेटाफ़्रेम में B का टीम मान और 15 का पॉइंट मान मौजूद नहीं है।
  • दूसरे डेटाफ़्रेम में C का टीम मान और 22 का पॉइंट मान मौजूद नहीं है।
  • दूसरे डेटाफ़्रेम में D का एक टीम मान और 29 का एक अंक मान मौजूद है।
  • दूसरे डेटाफ़्रेम में E का टीम मान और 24 का पॉइंट मान मौजूद नहीं है।

यह भी ध्यान दें कि आप NumPy While() फ़ंक्शन में मानों को बदलकर मौजूदा कॉलम में True और False के अलावा अन्य मान निर्दिष्ट कर सकते हैं।

उदाहरण के लिए, आप इसके बजाय “मौजूद है” और “अस्तित्व में नहीं है” का उपयोग इस प्रकार कर सकते हैं:

 #add column to show if each row in first DataFrame exists in second
all_df[' exists '] = np. where (all_df. exists == ' both ', ' exists ', ' not exists ')

#view updated DataFrame
print (all_df)

  team points exists
0 to 12 exists
1 B 15 not exists
2 C 22 not exists
3 D 29 exists
4 E 24 not exists

ध्यान दें कि मौजूदा कॉलम में मान बदल दिए गए हैं।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि पांडा में अन्य सामान्य कार्य कैसे करें:

पांडा: एक डेटाफ़्रेम से दूसरे डेटाफ़्रेम में एक कॉलम जोड़ें
पांडा: वे पंक्तियाँ प्राप्त करें जो किसी अन्य डेटाफ़्रेम में नहीं हैं
पांडा: कैसे जांचें कि एकाधिक कॉलम बराबर हैं या नहीं

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *