Извлечение пути к файлу Excel из другого файла Excel - PullRequest
0 голосов
/ 12 сентября 2018

У меня есть файл с именем «workbooks_to_process.xlsx» со столбцом, который содержит пути следующих файлов Excel:

**files_paths_2_process**     (column header)
  c:/work/file01.xlsx
  c:/work/file02.xlsx
  c:/work/file03.xlsx
    ………………….
  c:/work/file0m.xlsx

С другой стороны в Python Pandas

df_0 = pd.read_excel('workbooks_to_process.xlsx') # No issue
list_of_paths = df_0[files_paths_2_process].tolist() # No issue

Вот что я хочу сделать (в итеративном процессе)

itr = list_of_paths[3]  # or [0], [1], [n] etc

df_1 = pd.read_excel(itr)

Есть ли способ выполнить вышесказанное?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 12 сентября 2018

для перебора всех файлов в папке и всех листов в этих файлах. попробуйте это:

import pandas as pd
import os
file_list = [os.path.join(r,file) for r,d,f in os.walk("C:\\Users\\ref_folder\\") for file in f] 
for file in list(file_list):
    f = pd.ExcelFile(file)
    sheet_names = f.sheet_names
    for i in list(sheet_names):
        dataframe = pd.read_excel(f,i)

этот фрейм данных даст вам фрейм данных для каждого листа, работает также для рабочих книг, имеющих 1 лист.

Вы можете сопоставить имя файла с именем файла столбца Excel, и, если оно совпадает, прочитайте df. Я чувствую, что это наиболее обобщенный способ перебора файлов в папке и чтения как df.

Надеюсь, это поможет.

0 голосов
/ 12 сентября 2018

Попробуйте это

for itr in range(len(list_of_paths)): df_1 = pd.read_excel(list_of_paths[itr]) ... ...

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