Как извлечь файл PDF в Pandas фрейм данных без заголовка / заголовка таблицы, поскольку фрейм данных рассматривает его как столбец - PullRequest
0 голосов
/ 16 июня 2020

Пожалуйста, помогите мне в этом, как описано ниже. Мне очень нужна помощь, поскольку я пытался решить эту проблему самостоятельно и потратил два дня впустую. Все, что мне нужно, это таблица на страницах 10-23, это одна единственная таблица, и я не хочу заголовок / заголовок таблицы. Я пытаюсь прочитать PDF-файл с помощью Tabula. Все, что мне нужно, это таблица со страницы №10-23 без заголовка. Теперь проблема в том, что я пытался извлечь данные несколькими способами, и каждый из них сталкивался с разными проблемами. Почему я пробовал несколько способов, потому что каждый раз, когда заголовок / заголовок таблицы создавал беспорядок, поскольку фрейм данных рассматривает его как только один столбец. Пожалуйста, помогите

1-Я попытался извлечь таблицу, как показано ниже, она возвращает только один столбец вместе со строками, и когда я пытаюсь отбросить этот столбец заголовка и заменить его первой строкой, он отбрасывает последнюю строку вместе с ней

                file_path="https://nycfuture.org/pdf/CUF_StateoftheChains_2019_7.pdf"
                df=tabula.read_pdf(file_path,encoding='utf-8',spreadsheet=True,pages='10-24')
                df.columns 

Это возвращает только один столбец, который является заголовком / заголовком таблицы.

2-Когда я использую pandas_options = {header = none} в функции read_pdf, он возвращает список, и когда я пытаюсь преобразовать список в Dataframe с помощью Dataframe вместе с именем столбца, он возвращает ошибку, показанную ниже

file_path="https://nycfuture.org/pdf/CUF_StateoftheChains_2019_7.pdf"
             df=tabula.read_pdf(file_path,encoding='utf-8',pandas_options= 
            {'header':None},multiple_tables=True,spreadsheet=True,pages='10-24')

            ## Converting list to dataframe

           from pandas import DataFrame
            mydata= DataFrame(df,columns=['Retail Chain', 'Category', '2019','2018','2017', '2016', 
                     '2015', 'Brooklyn', 'Bronx', 'Queens', 'Manhattan', 'Staten Island'])


    It returns this error
    KeyError: "None of [Index(['Retail Chain', 'Category', '2019', '2018', '2017', '2016', 
   '2015',\n       'Brooklyn', 'Bronx', 'Queens', 'Manhattan', 'Staten Island'],\n      
     dtype='object')] are in the [columns]"

`
3-Когда я использую опцию to_csv для хранения данных и получения

df.to_csv('stores.csv')
brands_data=pd.read_csv("stores.csv")
 brands_data.head()
 It adds last column as row i.e Staten Island  to my dataframe 

` Столбец добавлен как строка

...