Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

स्तंभ मानों के आधार पर पांडा डेटाफ़्रेम में शामिल हों

मुझे लगता है कि आपको merge की आवश्यकता है डिफ़ॉल्ट के साथ inner शामिल हों, लेकिन दोनों स्तंभों में मानों का कोई डुप्लीकेट संयोजन आवश्यक नहीं है:

print (df2)
   item_id  document_id col1  col2  col3
0      337           10    s     4     7
1     1002           11    d     5     8
2     1003           11    f     7     0

df = pd.merge(df1, df2, on=['document_id','item_id'])
print (df)
   item_id  position  document_id col1  col2  col3
0      337         2           10    s     4     7
1     1002         2           11    d     5     8
2     1003         3           11    f     7     0

लेकिन यदि आवश्यक हो position स्थिति में कॉलम 3 :

df = pd.merge(df2, df1, on=['document_id','item_id'])
cols = df.columns.tolist()
df = df[cols[:2] + cols[-1:] + cols[2:-1]]
print (df)
   item_id  document_id  position col1  col2  col3
0      337           10         2    s     4     7
1     1002           11         2    d     5     8
2     1003           11         3    f     7     0



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. जब यह O.o . नहीं होना चाहिए तो मेरा SQL Int में परिवर्तित हो रहा है

  2. संभावनाएँ @mysql_प्रभावित_रो मान लौटाते हैं?

  3. MySQL WHERE IN क्लॉज के साथ इंडेक्स का उपयोग नहीं कर रहा है?

  4. एक राशि तक पहुंचने तक कैसे चयन करें

  5. MySQL दो मानों के अंतर का योग दिखाता है