如何修复Excel导入和比较错误?

时间:2019-04-21 07:50:15

标签: python excel pandas

我正在比较两个Excel文件,并希望使用某些过滤器将匹配项写入新文件。

我正在比较两个Excel文件,如果在Make,Model,Modification,Horse Power中也匹配,并且也来自“ WheelSizeFullDB_new”,年份在“ sql-autobaza”的年开始和年停止的范围内,那么我想要创建一个新文件,并将“ sql-autobaza”的所有列以及“ WheelSizeFullDB_new”的最后两列添加到其中,轮胎尺寸前和轮胎尺寸后

下载文件:

sql_base:drive.google.com/open?id=1Dk_1q9n5RgKFRawT7qBwyMY4ldGUL0fb

sab_base:drive.google.com/file/d/1AewxBR9p0Tgxi2i-iXS_9RDCd90hsA4G

import pandas as pd
import re

sab_base = pd.read_excel('C:\\Users\\x\\Desktop\\Reziko\\Programming\\Visual Studio 2019\\WheelSizeFullDB_new.xlsx')
sql_base = pd.read_excel('C:\\Users\\x\\Desktop\\Reziko\\Programming\\Visual Studio 2019\\sql-autobaza.xlsx')

sqlbase = sql_base.loc[
                        (sql_base['Make'].str.contains('%s[a-z]*'%sab_base['Make'], flags=re.I, regex=True)) &
                        (sql_base['Model'].str.contains('%s[a-z]*'%sab_base['Model'], flags=re.I, regex=True)) &
                        (sql_base['Modification'].str.contains('%s[a-z]*'%sab_base['Modification'], flags=re.I, regex=True)) &
                        (sql_base['Horse Power'].str.contains('%s[a-z]*'%sab_base['Horse Power'], flags=re.I, regex=True)) &
                        (sql_base['Year Start'] < sab_base['Year']) &
                        (sql_base['Year Stop'] > sab_base['Year'])
                        ]

print(sqlbase)

sqlbase.to_excel('sab_base_update.xlsx', index=False)

我希望创建新文件并将“ sql-autobaza”的所有列以及“ WheelSizeFullDB_new”轮胎尺寸前和轮胎尺寸后的最后两列添加到其中,但是我的代码不起作用

1 个答案:

答案 0 :(得分:1)

最好的方法是按Ctrl + F(称为“查找”功能),然后选择显示“替换”的选项卡。在“查找”字段中键入“ #REF!”,并将“替换”字段保留为空,然后按“全部替换”。这将从公式中消除所有#REF Excelerrors,从而解决问题。