Как денормализовать YAML для Pandas Dataframe?Python

Программы на Python
Ответить
Anonymous
 Как денормализовать YAML для Pandas Dataframe?

Сообщение Anonymous »

Я пытаюсь получить данные из файла YAML в DataFrame Pandas. Возьмем следующий пример data.yml:

Код: Выделить всё

---
- doc: "Book1"
reviews:
- reviewer: "Paul"
stars: "5"
- reviewer: "Sam"
stars: "2"
- doc: "Book2"
reviews:
- reviewer: "John"
stars: "4"
- reviewer: "Sam"
stars: "3"
- reviewer: "Pete"
stars: "2"
...
Желаемый DataFrame будет выглядеть так:

Код: Выделить всё

     doc reviews.reviewer reviews.stars
0  Book1             Paul             5
1  Book1              Sam             2
2  Book2             John             4
3  Book2              Sam             3
4  Book2             Pete             2
Я пробовал передавать данные YAML в Pandas разными способами (например, с помощью open('data.yml') как f: data = pd.DataFrame(yaml.load(f)) ), но ячейки всегда содержат вложенные словари. Это решение работает для общих данных JSON, но это довольно много кода, и кажется, что может существовать более простое решение для YAML.
Существует ли встроенный способ денормализации YAML для преобразования к фрейму данных Pandas таким образом?

Подробнее здесь: https://stackoverflow.com/questions/542 ... -dataframe
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»