用pandas对2张相同的表进行分析,分析出2张表中2项数据相同,1项数据不同的数据,形成表格,给出代码
时间: 2024-03-16 16:47:29 浏览: 100
假设我们有两张名为df1和df2的相同结构的数据表,我们想要找出两个表中某两列的值相同,但第三列的值不同的行,我们可以按照以下步骤进行操作:
```python
import pandas as pd
# 读取两张表格
df1 = pd.read_csv('table1.csv')
df2 = pd.read_csv('table2.csv')
# 指定需要比较的列
compare_cols = ['col1', 'col2']
# 选择需要比较的列,并将第三列命名为diff_col
df1_compare = df1[compare_cols + ['col3']].rename(columns={'col3': 'diff_col'})
df2_compare = df2[compare_cols + ['col3']].rename(columns={'col3': 'diff_col'})
# 合并两张表格
merged_df = pd.merge(df1_compare, df2_compare, on=compare_cols, how='inner', suffixes=('_1', '_2'))
# 筛选出diff_col不同的行
result_df = merged_df[merged_df['diff_col_1'] != merged_df['diff_col_2']]
# 输出结果
print(result_df)
```
这段代码将比较df1和df2中的'col1'和'col2'列,并将它们合并到一个表格中。然后筛选出'diff_col'列值不相等的行,并将结果输出。其中,'table1.csv'和'table2.csv'是两张表格的文件名,可以根据实际情况进行修改。
阅读全文