python - 比较 2 个 csv 文件,仅使用 pandas isin 函数和 out for 循环
问题描述
output = f2[~f2['column1'].isin(f1['column1'].unique())] + f2[~f2['column2'].isin(f1['column2'].unique())]
如何使用运算符进行此操作,我尝试了 && 和 ++ 也不起作用,我只想将每列的唯一值存储到输出变量,只有这样我才需要这样做,所以我很困惑使用运算符
f2[~f2['column1'].isin(f1['column1'].unique())]
在上面的命令中工作正常,但我想用操作员再次添加这个命令并将任何解决方案存储到一个变量中。??
解决方案
import pandas as pd
f1 = pd.read_csv('Big_1.csv',dtype=str)
f2 = pd.read_csv('Big_2.csv',dtype=str)
output= f2[~f2['column1'].isin(f1['column1'].unique()) |
~f2['column2'].isin(f1['column2'].unique()) |
~f2['column3'].isin(f1['column3'].unique())]
print(output)
df=pd.DataFrame(output)
df.to_csv('Unique_values_only.csv',header=True,index=True)
我们可以使用
~f2['column2'].isin(f1['column2'].unique())
当我们给出一个时,这个方法要多次
'|'
符号,如果我们使用 + 或 ++ 或 & 和 && 等运算符,则不会从数据框中返回“值”,每个值都将为“南”,因此我们可以检查每一列并从 csv 文件中返回 uniq 内容,这我们可以在不合并的情况下比较 2 个 csv 文件。
推荐阅读
- grafana - 如何从其他唯一标签中计算标签
- javascript - 如何从节点中的变量中获取特定键
- python - Flink Kafka Table API for python with JAAS
- python - 我应该如何将这些列表放在一起?
- list - Agda 标准库列表最大值
- javascript - 如何让用户保存文件并仅在浏览器 Javascript 中继续编辑该文件?
- c# - C# MS Word 互操作性 - 如何拉伸填充表格中的最后一列
- python - 正确组合数据帧
- r - R - 底图功能 - 自定义轴
- python - Python Zeep 为肥皂请求引发未知错误