создать единый фрейм данных, прочитав несколько html файлов - PullRequest
0 голосов
/ 09 мая 2020

У меня есть 23 html файлов, которые содержат данные в том же табличном формате, я хочу создать фрейм данных всех файлов и объединить в один большой фрейм данных для дальнейшего анализа, ниже приведен код,


import glob
import pandas as pd

all_rec = glob.glob('D:\python\*.html')
#print(all_rec)
list_data = []

for filename in all_rec:
    data = pd.read_html(filename)
    list_data.append(data)

list_data # sample output from t files

[[                   start_time                    user_host       query_time  \
  0  2020-02-19 07:01:56.411155  lrdba[lrdba] @ localhost []  00:01:55.299187   
  1  2020-02-20 07:01:56.005284  lrdba[lrdba] @ localhost []  00:01:54.210222   

             db                                    sql_text  
  0  kvb  call PROC_PROCESSINGSUMMARY(null,null)  
  1  kvb  call PROC_PROCESSINGSUMMARY(null,null)  ],
 [                   start_time                    user_host       query_time  \
  0  2020-02-19 07:01:56.411155  lrdba[lrdba] @ localhost []  00:01:55.299187   
  1  2020-02-20 07:01:56.005284  lrdba[lrdba] @ localhost []  00:01:54.210222   

             db                                    sql_text  
  0  kvb  call PROC_PROCESSINGSUMMARY(null,null)  
  1  kvb  call PROC_PROCESSINGSUMMARY(null,null)  ]]    

list_data =list_data[0] #when i mention this list_data[0] it show data for first file 
list_data =list_data[-1] #for list_data[-1] it show data for last file for below code

pd.concat(list_data,ignore_index=True)

Я хочу знать, какое значение мне нужно указать в [], чтобы получить все сведения о файле в одном большом фрейме данных.

1 Ответ

0 голосов
/ 09 мая 2020
import glob
import pandas as pd

all_rec = glob.glob('D:\python\*.html')
#print(all_rec)
list_data = []

for filename in all_rec:
    data = pd.read_html(filename)
    list_data.append(data)

list_data # showing array of all html data  

#remove this line
list_data =list_data[0] 
#remove this line
list_data =list_data[-1] 

pd.DataFrame(list_data).reset_index(drop=True) #replace concat with DataFrame

Надеюсь, это сработает!

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