Извлечение данных из нескольких листов из Excel с использованием Python - PullRequest
0 голосов
/ 07 апреля 2020

Я новичок в Python. Я начал работать над Excel. У меня есть два листа. 1-й лист - «система», а второй - «группы».

системный лист:

name         pdn_group   cflash
RDAFAN00053  pdn_group1  cflash_group1
RDAFAN00054  pdn_group2  cflash_group1

или ссылка (формат изображения): enter image description here

групповой лист:

group_name            pdn_group1                         pdn_group2           pdn_group3
profile        1                    2                        1                    1
apn        190007.fn/190008.fn 170007.fn/170008.fn        180007.fn           180007.fn 
description  TEST1                TEST2                      TEST3               TEST3


cflash            cflash_group1         
rising-thresold     500000          
falling-threshold   468700          
interval             3600   

или ссылка (формат изображения):

enter image description here

Итак, здесь я пытаюсь взять «имя» (RDAFAN00053) из системного листа и проверить его pdn_group (pdn_group1). Взяв эту pdn_group (pdn_group1) и сопоставив это имя с таблицей групп. (то же самое для другого имени)

Как в листе групп есть pdn_group1, поэтому я хочу захватить его профиль (1,2), его apn (19007.fn / 190008.fn, 170007.fn / 170008. fn), его описание (Test1, Test2) и данные группы cfla sh. (то же самое для другой группы)

Выходные данные должны быть такими:

name = RDAFAN00053

profile = [1,2],
apn = [190007.fn/190008.fn, 170007.fn/170008.fn],
description = [test1, test2],

rising-thresold = 500000,
falling-threashold = 4687000,
interval = 3600

name = RDAFAN00054

profile = [1],
apn = [180007.fn],
description = [TEST3],

Мой пробный код:

import pandas as pd

#Reading excel file name
excel_file = "Copy of Book1.xlsx"

#Reading Excel sheets data and storing into data frame 
system_df = pd.read_excel(excel_file, sheet_name='system')
group_df = pd.read_excel(excel_file, sheet_name='groups')


#Looping excel data based on Name
for i in range(0, len(system_df['name'])):
    group = system_df['pdn_group'][i]
    print(group_df.columns.get_loc(group))

Я застрял здесь на этом шаге.

Пожалуйста, нужна помощь, поскольку я нахожу это очень сложным. Или любые предложения о том, как это сделать. Это было бы очень полезно для моего проекта колледжа.

ПРИМЕЧАНИЕ. Не использовать индекс, основанный на динамических данных c (pdn_group может быть больше 3), поэтому рассмотрите возможность на основе заголовков (строка + столбец оба) .

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