पांडा की सूची की सूची प्राप्त करना DataFrame


177

मैं एक स्प्रेडशीट की सामग्री को पांडा में पढ़ रहा हूं। DataNitro में एक विधि है जो सूचियों की सूची के रूप में कोशिकाओं का एक आयताकार चयन लौटाती है। इसलिए

table = Cell("A1").table

देता है

table = [['Heading1', 'Heading2'], [1 , 2], [3, 4]]

headers = table.pop(0) # gives the headers as list and leaves data

मैं इसका अनुवाद करने के लिए कोड लिखने में व्यस्त हूं, लेकिन मेरा अनुमान है कि यह इतना सरल उपयोग है कि ऐसा करने की विधि होनी चाहिए। खिचड़ी भाषा इसे प्रलेखन में लगती है। इस पद्धति को सरल बनाने वाला कोई संकेत?

जवाबों:


266

pd.DataFrameनिर्माता को सीधे कॉल करें :

df = pd.DataFrame(table, columns=headers)
df

   Heading1  Heading2
0         1         2
1         3         4

84

ऊपर EdChum द्वारा समझाया गया दृष्टिकोण के साथ, सूची में मूल्यों को पंक्तियों के रूप में दिखाया गया है। इसके बजाय सूचियों के मानों को डेटाफ़्रेम में कॉलम के रूप में दिखाने के लिए, बस निम्नलिखित के रूप में ट्रांज़ोज़ () का उपयोग करें:

table = [[1 , 2], [3, 4]]
df = DataFrame(table)
df = df.transpose()
df.columns = ['Heading1', 'Heading2']

फिर आउटपुट है:

      Heading1  Heading2
0         1        3
1         2        4

6

popसूची के बिना भी हम कर सकते हैंset_index

pd.DataFrame(table).T.set_index(0).T
Out[11]: 
0 Heading1 Heading2
1        1        2
2        3        4

अपडेट करें from_records

table = [['Heading1', 'Heading2'], [1 , 2], [3, 4]]

pd.DataFrame.from_records(table[1:],columns=table[0])
Out[58]: 
   Heading1  Heading2
0         1         2
1         3         4
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.