2012-06-08 20 views
5

dataframe मैं लाइनों के हजारों के साथ एक एक्सएमएल फ़ाइल है की तरह है:एक्सएमएल

<Word x1="206" y1="120" x2="214" y2="144" font="Times-Roman" style="font-size:22pt">WORD</Word> 

मैं इसे (सभी यह विशेषताएँ) pandasdataframe को परिवर्तित करना चाहते हैं। ऐसा करने के लिए मैं सुंदर सूप का उपयोग कर फ़ाइल के माध्यम से लूप कर सकता हूं और पंक्तियों के आधार पर पंक्तियों को पंक्ति डाल सकता हूं या कॉलम के रूप में डालने के लिए सूचियां बना सकता हूं। हालांकि मैं जानना चाहता हूं कि मैंने जो वर्णन किया है उसे पूरा करने का एक और अधिक पागल तरीका है या नहीं। पहले ही, आपका बहुत धन्यवाद।

कोड उदाहरण:

x1list=[] 
x2list=[] 

for word in soup.page.findAll('word'): 
    x1list.append(int(word['x1'])) 
    x2list.append(int(word['x2'])) 
df=DataFrame({'x1':x1list,'x2':x2list}) 
+0

हमें अपने कोड दिखाएं। – eumiro

+0

@ यूमिरो: एक कोड उदाहरण जोड़ा गया ... – root

उत्तर

3

इस प्रयास करें:

DataFrame.from_records([(int(word['x1']), int(word['x2'])) 
         for word in soup.page.findAll('word')], 
         columns=('x1', 'x2')) 
+0

धन्यवाद। मुझे इसे एक मौका और देना होगा। – root