Как вы можете сравнить две книги Excel в python? - PullRequest
1 голос
/ 17 марта 2020

У меня есть книга Excel - лист1 со значениями:

Names
--------
Aaron  |
Bob    |
Carl   |
Daron  |
Elle   |

У меня есть другая книга Excel - лист2 со значениями:

Names       Marks
-------------------
Aaron    |   90
Bob      |   89

Я хочу добавить отсутствующие имена в Рабочая тетрадь 2 на листе 2 с пометкой «Нет отметок» в столбце «Метки» с использованием python.

Может ли кто-нибудь помочь с этим?

Заранее спасибо

1 Ответ

0 голосов
/ 17 марта 2020

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

import pandas as pd

df_list_1 = pd.read_excel (r'data\excel\excel_1.xlsx', sheet_name='Sheet1') # Excel with names
df_list_2 = pd.read_excel (r'data\excel\excel_2.xlsx', sheet_name='Sheet1') # Excel with names and marks

df_list_1 = df_list_1.reset_index()
df_list_2 = df_list_2.reset_index()

df_diff = df_list_1[~df_list_1['Names'].isin(df_list_2['Names'])] # All names not in the second excel with the marks
df_diff = df_diff.fillna("No Marks") # Fill NA with 'no marks', marks on the second excel will be retained
df_list_final = df_list_2.append(df_diff) # Add all names that did not match
df_list_final = df_list_final.drop(['index'], axis=1).reset_index(drop=True) # Remove index column and reindex

print(df_list_final)

Вывод

     Names         A         B         C         D
0  Lambrie        90        85       NaN       NaN
1     Wade        70        50       NaN       NaN
2  Jurgens  No Marks  No Marks  No Marks  No Marks
3   Magdel  No Marks  No Marks  No Marks  No Marks
4     Liam        60        50        10        50
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...