Pytanie w sprawie xml, python, dataframe, pandas – Ramka danych XML na pandy

5

Mam plik XML z tysiącami linii, takich jak:

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

Chcę go przekonwertować (wszystkie jego atrybuty) napandas dataframe. Aby to zrobić, mogłem przejść przez plik za pomocą pięknej zupy i wstawić wartości wiersz po wierszu lub utworzyć listy do wstawienia jako kolumny. Chciałbym jednak wiedzieć, czy istnieje bardziej pytoniczny sposób osiągnięcia tego, co opisałem. Z góry dziękuję.

Przykład kodu:

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})
@eumiro: dodano przykład kodu ... root
Pokaż nam swój kod. eumiro

Twoja odpowiedź

1   odpowiedź
3

Spróbuj tego:

DataFrame.from_records([(int(word['x1']), int(word['x2']))
                        for word in soup.page.findAll('word')],
                       columns=('x1', 'x2'))
Dzięki. Spróbuję. root

Powiązane pytania