Соскоблите 3 таблицы и преобразуйте их в пригодный для использования df, используя панд - PullRequest
0 голосов
/ 18 марта 2019

Я пытаюсь очистить веб-сайт с тремя таблицами и преобразовать его в формат df или csv, который я могу использовать для анализа. Вот код, который у меня есть, и проблемы, с которыми я сталкиваюсь на нескольких этапах. (предупреждение: новичок в питоне)

import pandas as pd

dfs = pd.read_html('https://www.happyhourspanish.com/learning-efficiently-start-with-the-250-most-common-spanish-words/',header=0)
for df in dfs:
    print(df) #loops all 3 tables

Этот код загружает все три таблицы, содержащие 250 слов, в три столбца: -ранг, испанский, английский. Когда я пытаюсь сохранить все 3 таблицы, ошибка говорит, что я не могу сохранить объект списка в CSV.

dfs.to_csv("Spanish_Key2.csv", index=False)

AttributeError: 'list' object has no attribute 'to_csv'

Когда я сохраняю только один df, он сохраняет только третью из 3 таблиц в csv.

df.to_csv("Spanish_Key.csv", index=False)

Когда я попробовал просто 'dfs', он отображает три красивые таблицы в виде списка. Вопрос здесь - как мне получить этот формат таблицы из списка в фрейм данных со всеми 3 таблицами?

dfs

Когда я пробовал 'dfs [0]', он помещает только первую таблицу в работающий фрейм данных. Как мне получить два других в этом формате?

dfs[0]

Когда я попробовал следующий код, все 3 таблицы теперь находятся в одной ячейке, поэтому информационный кадр - только 3 ячейки.

import pandas as pd
spanish = pd.DataFrame(dfs)
spanish

Будем весьма благодарны за любые предложения о том, как поместить все три таблицы в один фрейм данных ИЛИ все три таблицы в csv со всеми 250 словами в отдельной ячейке.

Если решение заключается в манипулировании Excel, какие-либо предложения о том, как разделить все слова на разные ячейки? Спасибо!

1 Ответ

1 голос
/ 18 марта 2019

Вы хотите pd.concat(dfs), который объединяет три кадра данных вместе по строкам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...