Как получить похожее название листа в пандах - PullRequest
2 голосов
/ 11 октября 2019

Я пытаюсь найти похожее имя листа в Excel с помощью панд.

В настоящее время я использую приведенный ниже код для получения кадра данных листа в пандах.

excel= pd.ExcelFile(excel)
tab_name = 'Employee'
emp_df= excel.parse(tab_name)

Но этоКод не будет выполнен, если имя листа в Excel содержит пробел или другие дополнительные символы.

Есть ли простой способ сделать это?

1 Ответ

0 голосов
/ 15 октября 2019

Я использовал api-подобие (fuzzywuzzy), чтобы найти похожий лист, только если лист не обнаружил ошибку при работе excel.parse(tab_name)

from fuzzywuzzy import fuzz
import xlrd

try:
    tab_df = excel.parse(tab_name)
except xlrd.biffh.XLRDError:
    sheet_names=excel.sheet_names
    ratios = [fuzz.ratio(tab_name, tbname) for tbname in sheet_names]
    if(max(ratios)>50):
        tab_name = sheet_names[ratios.index(max(ratios))]
        tab_df = excel.parse(tab_name)
    else:
        logger.error(tab_name+"Not found")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...