我一直在尝试通过python脚本对Excel输出进行样式设置,比较两个数据框并突出显示具有不同值的单元格(已更新的单元格)。我用differ= df_up.where(df_up.values!=df_old.values).notna()
用布尔值制作了一个数据框
然后,我将True单元的索引放入字典中,如下所示:
{'building': [3, 6], 'capacity': [], 'address': [], 'city': [], 'state': [], 'type': [1, 2, 5, 7, 8, 9, 10]}
运行此代码时,它会创建excel表,但仅突出显示字典中的最后一个条目。
for k in upd_dict:
for i in upd_dict[k]:
print(i,k)
styled = (df_up.style.applymap(lambda v: 'background-color: %s' % 'green', subset= pd.IndexSlice[i,k]))
styled.to_excel('Update_styled.xlsx', engine='openpyxl')
这可能是由于for循环。有没有办法让生成的Excel文件中突出显示的字典中的所有列,行组合?