2013-11-04 3 views
5

मैं कुछ कार्यों को लागू करता हूं और पांडस डेटाफ्रेम के मौजूदा कॉलम में एक नया कॉलम मान उत्पन्न करता हूं। हालांकि df['col1'] = new_list कॉलम में नई सूची असाइन करने के लिए काम नहीं करता है। क्या यह गलत तरीका है और इस तरह के ऑपरेशन को लागू करने का सही तरीका क्या है?पांडस डेटा फ्रेम के मौजूदा कॉलम में सूची कैसे असाइन करें?

+1

'df' एक शब्दकोश है? क्या आपको कोई त्रुटि मिल रही है या क्या? कृपया अधिक जानकारी पोस्ट करें। – moenad

+2

मुझे लगता है कि 'डीएफ' एक पांडस' डेटाफ्रेम 'है, क्योंकि प्रश्न के शीर्षक और पाठ से पता चलता है। – piokuc

+2

जब आप कहते हैं कि "काम नहीं करता" क्या आप स्पष्ट कर सकते हैं कि वास्तव में क्या काम नहीं कर रहा है, उदा। एक उदाहरण और पूर्ण stacktrace। ऐसा लगता है कि यह काम करना चाहिए। –

उत्तर

7

यह काम करना चाहिए यदि सूची की लंबाई DataFrame

>>> df = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6]}) 
>>> df['C'] = [10,20,30] 
>>> df 
    A B C 
0 1 4 10 
1 2 5 20 
2 3 6 30 

में पंक्तियों की संख्या के बराबर है यदि आपकी सूची कम या DataFrame से अधिक लंबी है, तो आप एक त्रुटि Length of values does not match length of index प्राप्त करेंगे।

+1

आप अपने उदाहरण में एक कॉलम फिर से असाइन नहीं कर रहे हैं, आप केवल इसमें एक नया कॉलम जोड़ रहे हैं। – Astrid

+1

सच है, फिर भी, पहली पंक्ति में 'सी' परिभाषित किया गया था (विभिन्न मानों के साथ)। – gseattle

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