पांडा: दो डेटाफ़्रेम की पंक्ति दर पंक्ति तुलना कैसे करें
आप पंक्ति दर पंक्ति दो पांडा डेटाफ़्रेम की तुलना करने के लिए निम्नलिखित विधियों का उपयोग कर सकते हैं:
विधि 1: डेटाफ़्रेम की तुलना करें और केवल अंतर वाली पंक्तियाँ रखें
df_diff = df1. compare (df2, keep_equal= True , align_axis= 0 )
विधि 2: डेटाफ़्रेम की तुलना करें और सभी पंक्तियाँ रखें
df_diff = df1. compare (df2, keep_equal= True , keep_shape= True , align_axis= 0 )
निम्नलिखित उदाहरण दिखाते हैं कि निम्नलिखित पांडा डेटाफ़्रेम के साथ प्रत्येक विधि का उपयोग कैसे करें:
import pandas as pd #create first DataFrame df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D'], ' points ': [18, 22, 19, 14], ' assists ': [5, 7, 7, 9]}) print (df1) team points assists 0 to 18 5 1 B 22 7 2 C 19 7 3 D 14 9 #create second DataFrame df2 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'E'], ' points ': [18, 30, 19, 20], ' assists ': [5, 7, 7, 9]}) print (df2) team points assists 0 to 18 5 1 B 30 7 2 C 19 7 3 E 20 9
उदाहरण 1: डेटाफ़्रेम की तुलना करें और केवल अंतर वाली पंक्तियाँ रखें
निम्नलिखित कोड दिखाता है कि दो डेटाफ़्रेम पंक्ति की पंक्ति दर पंक्ति तुलना कैसे करें और केवल उन पंक्तियों को रखें जिनमें कम से कम एक कॉलम में अंतर हो:
#compare DataFrames and only keep rows with differences
df_diff = df1. compare (df2, keep_equal= True , align_axis= 0 )
#view results
print (df_diff)
team points
1 coil B 22
other B 30
3 choke D 14
other E 20
हम देख सकते हैं कि डेटाफ़्रेम में दो अलग-अलग पंक्तियाँ हैं।
विशेष रूप से, हम देख सकते हैं कि प्रत्येक डेटाफ़्रेम के सूचकांक स्थान 1 और 3 पर पंक्तियों के कम से कम एक कॉलम में अलग-अलग मान हैं।
सेल्फ लाइन के मान पहले डेटाफ़्रेम के मान प्रदर्शित करते हैं जबकि दूसरी पंक्ति के मान दूसरे डेटाफ़्रेम के मान प्रदर्शित करते हैं।
उदाहरण के लिए, हम देख सकते हैं:
- पहले डेटाफ़्रेम की अनुक्रमणिका स्थिति 1 पर पंक्ति में टीम कॉलम में बी और पॉइंट कॉलम में 22 शामिल हैं।
- दूसरे डेटाफ़्रेम की अनुक्रमणिका स्थिति 1 पर पंक्ति में टीम कॉलम में बी और पॉइंट कॉलम में 30 शामिल हैं।
ध्यान दें : Keep_equal=True तर्क पांडा को मान समान रखने के लिए कहता है। अन्यथा, समान मान NaN के रूप में प्रदर्शित होते हैं।
उदाहरण 2: डेटाफ़्रेम की तुलना करें और सभी पंक्तियाँ रखें
निम्नलिखित कोड दिखाता है कि पंक्ति दर पंक्ति दो डेटाफ़्रेम की तुलना करने और सभी पंक्तियों को मूल डेटाफ़्रेम से रखने के लिए Keep_shape=True तर्क का उपयोग कैसे करें:
#compare DataFrames and keep all rows
df_diff = df1. compare (df2, keep_equal= True , keep_shape= True , align_axis= 0 )
#view results
print (df_diff)
team points assists
0 choke A 18 5
other A 18 5
1 coil B 22 7
other B 30 7
2 choke C 19 7
other C 19 7
3 choke D 14 9
other E 20 9
परिणामी डेटाफ़्रेम में मूल डेटाफ़्रेम की सभी पंक्तियाँ और स्तंभ शामिल हैं।
नोट #1 : तुलना() फ़ंक्शन मानता है कि दो डेटाफ़्रेम के आयाम समान हैं।
नोट #2: आप पांडा तुलना() फ़ंक्शन के लिए संपूर्ण दस्तावेज़ यहां पा सकते हैं।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि पांडा में अन्य सामान्य कार्य कैसे करें:
पांडा: दो स्तंभों की तुलना कैसे करें
पांडा: तीन स्तंभों की तुलना कैसे करें
पांडा: दो अलग-अलग डेटाफ़्रेम में कॉलम की तुलना कैसे करें