2 个 csv 文件内容是否相同有没有好的比较方法

2020-08-15 19:28:21 +08:00
 Wolfsin
2 个文件,结构是一样的,但是数据是乱序的。比如
1.csv:
A B C D
1 1 1 1
2 2 2 2
3 3 3 4
4 4 4 4
--------
2.csv:
A B C D
2 2 2 2
4 4 4 4
3 3 3 3
1 1 1 1

这 2 个 csv 文件虽然数据的顺序不一样,但是因为每行的内容是一样的,所以可以被认为是 2 个一样的文件,目前找到的比较方法都是按照一行对应一行比较的,这样的话,上面说的 2 个文件会被认为是不相同,不知道有没有什么软件能实现上面说的比较方法
1579 次点击
所在节点    问与答
9 条回复
wangkun025
2020-08-15 19:30:36 +08:00
Excel,排序,再对比下。
xupefei
2020-08-15 19:40:50 +08:00
> wc -l 1.csv
5
> wc -l 2.csv
5
> comm -12 <(sort 1.csv) <(sort 2.csv) | wc -l
4

你给的这两个文件不一样吧,一个是 3334,一个是 3333 。
blackeeper
2020-08-15 19:47:08 +08:00
cat 1.csv | sort |md5sum
cat 2.csv | sort |md5sum
排序后,对比一下两个文件的哈希值
Wolfsin
2020-08-15 19:54:20 +08:00
@xupefei #2 抱歉,打错了应该都是 3333 的
Wolfsin
2020-08-15 19:58:52 +08:00
@xupefei #2 能问一下这个是什么工具吗?
levelworm
2020-08-16 02:23:55 +08:00
@Wolfsin Linux CLI
justgodlike1993
2020-08-16 10:25:22 +08:00
sort 然后 diff
di94sh
2020-08-16 15:17:34 +08:00
python 读到 set 里 每一行都是 tuple
hongch
2020-08-16 16:13:03 +08:00
最简单的方法
A.forEach{
return B.contains(item)
}
🤪

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/698531

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX