Python 有没有办法将数据框中突出显示的部分保存到excel中?
我试图比较两个相同的dataframes头,并突出显示两个帧中不相似的数据 现在,我想将突出显示的行打印到excel工作表中,并保留标题。我不能这么做Python 有没有办法将数据框中突出显示的部分保存到excel中?,python,pandas,Python,Pandas,我试图比较两个相同的dataframes头,并突出显示两个帧中不相似的数据 现在,我想将突出显示的行打印到excel工作表中,并保留标题。我不能这么做 步骤1:-选择所需的行并将其存储在新帧中,例如df 在python中选择行可以使用 第二步: 使用此选项:- df.to_excel r'C:\Users\Desktop\selected_dataframe.xlsx' 别忘了在路径的末尾添加“.xlsx”您可以通过比较每个对应行的每个元素来检查差异这里我使用唯一id列来查找对应行。如果存在差
步骤1:-选择所需的行并将其存储在新帧中,例如df 在python中选择行可以使用 第二步: 使用此选项:- df.to_excel r'C:\Users\Desktop\selected_dataframe.xlsx'
别忘了在路径的末尾添加“.xlsx”您可以通过比较每个对应行的每个元素来检查差异这里我使用唯一id列来查找对应行。如果存在差异,可以将其附加到新的数据帧。最后将新数据框保存为excel格式
df_differnt_rows = pd.DataFrame(columns=['id','B','C'])
df1 = pd.DataFrame([[1,2,3],[2,2,3],[3,2,3]], columns=['id','B','C'])
df2 = pd.DataFrame([[1,2,3],[2,"different",2],[3,2,3]], columns=['id','B','C'])
for i, row in df1.iterrows():
compare_row = df2.loc[df2['id'] == row['id']].iloc[0]
if all(row == compare_row):
continue
df_differnt_rows = df_differnt_rows.append(compare_row)
这将生成另一个df,该df具有df1和df2之间不同的所有行
print(df_differnt_rows)
id B C
1 2 different 2
使用.to_excel方法保存:
如果要突出显示excel文件中的单元格,请签出i.e.patternfill。通过.loc选择所需的行,使用.to_excel方法如何选择这些特定行。是否有代码片段或其他内容可供我使用。请原谅,我对这件事还很陌生@paulh请在这里复制并粘贴您的数据框,您尝试的内容在问题@U9中发布了一张图片供参考-Forward@MurtuzaAkhtari我如何选择我想要的行?选中编辑的行我实际上想要选择我高亮显示的行。我找不到访问行的方法,基于此,你读了我附加的链接了吗。你需要做一些类似的事情,可能还需要稍加调整才能做我做的大豆。我会努力的。并会让您知道结果您通常不需要使用数据帧循环。@PaulH我更新了答案以删除循环:
df_differnt_rows.to_excel('df_differnt_rows.xlsx')