用python比较execl指定两列的不同
时间: 2023-06-15 13:06:35 浏览: 241
你可以使用Python中的pandas库来比较两个Excel文件中指定的两列的不同。以下是一些示例代码:
```python
import pandas as pd
# 读取Excel文件
df1 = pd.read_excel('file1.xlsx')
df2 = pd.read_excel('file2.xlsx')
# 指定需要比较的两列
col1 = 'Column1'
col2 = 'Column2'
# 使用pandas的merge()函数将两个DataFrame按照指定的列合并
merged_df = pd.merge(df1[[col1, col2]], df2[[col1, col2]], on=col1, how='outer', suffixes=('_1', '_2'))
# 找出不同的行
diff_df = merged_df[merged_df[col2+'_1'] != merged_df[col2+'_2']]
# 输出结果
print(diff_df)
```
在上面的代码中,我们首先使用pandas的read_excel()函数读取两个Excel文件。然后,我们指定需要比较的两列,并使用merge()函数将两个DataFrame按照指定的列合并。最后,我们找出不同的行并输出结果。
需要注意的是,如果两个Excel文件中的行数或列数不同,merge()函数可能会出现问题。因此,在使用之前,最好先检查两个Excel文件的结构是否相同。
相关问题
python 比较execl特定两列的不同并输出到新表格
可以使用 Python 的 pandas 库来实现这个任务。
首先,需要安装 pandas 库。可使用以下命令进行安装:
```python
!pip install pandas
```
接下来,可以使用以下代码实现比较两个 Excel 表格的特定两列的差异,并将结果写入新的 Excel 表格中:
```python
import pandas as pd
# 读取原始 Excel 表格
df1 = pd.read_excel('file1.xlsx')
df2 = pd.read_excel('file2.xlsx')
# 比较特定两列的差异
diff = pd.concat([df1['column1'], df1['column2']]).drop_duplicates(keep=False)
same = pd.merge(df1, df2, on=['column1', 'column2'], how='inner')
# 将结果写入新的 Excel 表格
writer = pd.ExcelWriter('output.xlsx')
diff.to_excel(writer, sheet_name='diff', index=False)
same.to_excel(writer, sheet_name='same', index=False)
writer.save()
```
上述代码中,需要将 `file1.xlsx` 和 `file2.xlsx` 替换成实际的 Excel 文件名,将 `column1` 和 `column2` 替换成实际需要比较的两列的列名。输出结果将保存在 `output.xlsx` 中,其中,`diff` 表示不同的行,`same` 表示相同的行。
使用pandas比较execl两列不同
可以使用pandas库中的`read_excel`函数读取Excel文件,并使用`DataFrame`对象进行比较。
以下是比较Excel文件中两列不同的示例代码:
```python
import pandas as pd
# 读取Excel文件
df = pd.read_excel('file.xlsx')
# 比较两列
diff = df['列1'] != df['列2']
# 输出不同的行
print(df[diff])
```
其中,`read_excel`函数用于读取Excel文件,`df['列1']`和`df['列2']`用于选择需要比较的两列,`!=`用于比较两列的不同,最后使用`print`函数输出不同的行。
阅读全文