1. 导入所需的库
import pandas as pd
  1. 读取本月数据和上月数据
df_this_month = pd.read_excel('this_month.xlsx')
df_last_month = pd.read_excel('last_month.xlsx')
  1. 合并两个数据表,根据IP和MAC进行合并,只保留本月数据表中的IP和MAC
df_merge = pd.merge(df_this_month[['IP', 'MAC']], df_last_month, on=['IP', 'MAC'], how='outer', indicator=True)
  1. 统计新增、删除和未变更的数据行数
new_count = (df_merge['_merge'] == 'left_only').sum()
delete_count = (df_merge['_merge'] == 'right_only').sum()
same_count = (df_merge['_merge'] == 'both').sum()
  1. 创建新表并将结果存入新表
result = pd.DataFrame({'新增数据': [new_count], '删除数据': [delete_count], '未变更数据': [same_count]})
result.to_excel('result.xlsx', index=False)

完整代码:

import pandas as pd

# 读取本月数据和上月数据
df_this_month = pd.read_excel('this_month.xlsx')
df_last_month = pd.read_excel('last_month.xlsx')

# 合并两个数据表,根据IP和MAC进行合并,只保留本月数据表中的IP和MAC
df_merge = pd.merge(df_this_month[['IP', 'MAC']], df_last_month, on=['IP', 'MAC'], how='outer', indicator=True)

# 统计新增、删除和未变更的数据行数
new_count = (df_merge['_merge'] == 'left_only').sum()
delete_count = (df_merge['_merge'] == 'right_only').sum()
same_count = (df_merge['_merge'] == 'both').sum()

# 创建新表并将结果存入新表
result = pd.DataFrame({'新增数据': [new_count], '删除数据': [delete_count], '未变更数据': [same_count]})
result.to_excel('result.xlsx', index=False)

原文地址: http://www.cveoy.top/t/topic/qVz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录