2012-08-28 16 views
20

मेरे पास कॉलम A, B के साथ डेटाफ़्रेम है। मुझे एक कॉलम C बनाने की आवश्यकता है जैसे कि प्रत्येक रिकॉर्ड/पंक्ति:मुझे डेटाफ्रेम में अधिकतम 2 कॉलम कैसे लेना चाहिए और इसे एक और कॉलम बनाना चाहिए?

C = max(A, B)

मुझे यह करने के बारे में कैसे जाना चाहिए?

धन्यवाद।

उत्तर

47

आप इस तरह अधिकतम प्राप्त कर सकते हैं:

>>> import pandas as pd 
>>> df = pd.DataFrame({"A": [1,2,3], "B": [-2, 8, 1]}) 
>>> df 
    A B 
0 1 -2 
1 2 8 
2 3 1 
>>> df[["A", "B"]] 
    A B 
0 1 -2 
1 2 8 
2 3 1 
>>> df[["A", "B"]].max(axis=1) 
0 1 
1 8 
2 3 

और इतने:

>>> df["C"] = df[["A", "B"]].max(axis=1) 
>>> df 
    A B C 
0 1 -2 1 
1 2 8 8 
2 3 1 3 

आप जानते हैं कि 'ए' और 'बी' केवल स्तंभ हैं, तो आप भी दूर हो सकता है

>>> df["C"] = df.max(axis=1) 

साथ और तुम .apply(max, axis=1) भी इस्तेमाल कर सकते हैं, मुझे लगता है।

संबंधित मुद्दे