2012-11-26 4 views
8

मैं यह नहीं समझ सकता कि सीरीज़ को सही तरीके से कैसे लिखना/पढ़ना है ... निम्नलिखित (और इसके कई बदलाव) पढ़ने वाली श्रृंखला में लिखित श्रृंखला से अलग हैं ... ध्यान दें कि श्रृंखला को एक में पढ़ा जाता है एक श्रृंखला के बजाय डेटाफ्रेम।सीएसवी से/से पांडा सीरीज कैसे लिख/पढ़ा जाए?

In [55]: s = pd.Series({'a': 1, 'b': 2}) 

In [56]: s 
Out[56]: 
a 1 
b 2 

In [57]: s.to_csv('/tmp/s.csv') 

In [58]: !cat /tmp/s.csv 
a,1 
b,2 

In [59]: pd.read_csv('/tmp/s.csv') 
Out[59]: 
    a 1 
0 b 2 

उत्तर

16
In [3]: s.to_csv('/home/wesm/tmp/sfoo.csv') 

In [4]: Series.from_csv('/home/wesm/tmp/sfoo.csv') 
Out[4]: 
a 1 
b 2 

तुम भी header=None, index_col=0, squeeze=Trueread_csv क्या रूगेर Kassies सुझाव के लिए इसी तरह के पारित कर सकते हैं।

2

एक सीएसवी में आपके पांडा श्रृंखला की संरचना के बारे में कोई जानकारी नहीं है। कुछ अतिरिक्त तर्क निर्दिष्ट करने से मदद मिल सकती है। डेटा को सामान्य के रूप में वापस प्राप्त करना संभव है:

pd.read_csv('s.csv', index_col=0, header=None) 

लेकिन इससे डिफ़ॉल्ट कॉलम और अनुक्रमणिका नाम जोड़े जाते हैं। यदि आप बाद में अपने सीरीज/डीएफ को सेव() और pd.load() विधियों का उपयोग करने के लिए बेहतर तरीके से उपयोग करना चाहते हैं।