2012-12-26 21 views
9

में कोई कॉलम नाम पांडा डेटाफ्रेम पर मूल प्रश्न नहीं है। मेरे पास डेटापॉइंट के साथ 1x1 डेटाफ्रेम है और कोई कॉलम हेडर नहीं है (वर्तमान में)। df[0,0] काम नहीं करता है क्योंकि मुझे लगता है कि यह कॉलम नाम की उम्मीद कर रहा है। इसके अलावा, df.0 काम नहीं करता है और न ही df[0,'']df.ix[0,0] काम करता है।पांडा पाइथन

सामान्यतः, क्या मुझे कॉलम नाम होना चाहिए? क्या यह पांडा डेटाफ्रेम के साथ कॉलम नामों का उपयोग करने का सबसे अच्छा अभ्यास है? अगर मेरे एसक्यूएल क्वेरी में कॉलम हेडर नहीं हैं, तो क्या उन्हें उस बिंदु पर जोड़ना सबसे अच्छा है?

सहायता के लिए धन्यवाद।

उत्तर

7

नहीं, आपको कॉलम नाम असाइन करने की आवश्यकता नहीं है, न ही आपको किसी भी तत्व तक पहुंचने की आवश्यकता है।

In [12]: df = pd.DataFrame([0]) 

In [13]: df.ix[0,0] 
Out[13]: 0 

In [14]: df[0][0] 
Out[14]: 0 

वास्तव में, आप स्तंभ के बारे में सोच सकते हैं पहले से ही एक नाम होने - यह क्या होता है जब आप एक नाम

In [15]: df #Before naming the column 
Out[15]: 
    0 
0 0 

In [16]: df.columns = ['ColA'] 
In [17]: df #Renamed 
Out[17]: 
    ColA 
0  0 

In [18]: df['ColA'][0] #Now you can access the column using the new name 
Out[18]: 0 

In [19]: df[0][0]   #... but trying the old name will not work 
--------------------------------------------------------------------------- 
KeyError         Traceback (most recent call last) 

KeyError: 'no item named 0' 

तुम अब भी DataFrame.ix बस का उपयोग कर सकते प्रदान पर पूर्णांक 0. देखो है पहले के रूप में, हालांकि:

In [20]: df.ix[0,0] 
Out[20]: 0 
+0

आपकी मदद के लिए धन्यवाद। शायद एक और बात मुझे जिक्र करना चाहिए। लिखते समय: [1] में: डीएफ आउट [1]: में [15] के साथ आपके उदाहरण के समान कोई "0" सूचीबद्ध नहीं है। क्या वह मुद्दा है जिसमें मैं दौड़ रहा हूं? धन्यवाद। – user1911092

+0

शायद आप मुझे पेस्टबिन का उपयोग करके या अपने प्रश्न को संपादित करके दिखा सकते हैं? – Aman

+0

मुझे खेद है - पेस्ट बिन नहीं पता। लेकिन यदि आप ऊपर [15] के लिए अपना उदाहरण देखें तो आपके पास शून्य की दो पंक्तियां हैं। पहली पंक्ति में एक शून्य है और दूसरे में दो शून्य हैं। मेरे उदाहरण में पहली पंक्ति खाली है और दूसरी पंक्ति में दो शून्य हैं। – user1911092

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