【发布时间】:2013-11-13 13:07:01
【问题描述】:
我有两个 Excel 文件。两个文件也有大约 200 000 行。 (我在例子中只给出了六行。)
file1.xlsx
M1 M2 M3 M4
97.1859 -59.1873 0.000912 4.55
63.116 -75.958 0.003797 20.85
112.09 -22.9276 0.005008 2.26
320.7931 -63.4153 0.008382 7.45
337.8978 -72.8617 0.009965 3.88
99.2183 -56.5418 0.018141 18.17
file2.xlsx
N1 N2 N3 N4 N5 N6
0.057 4 Im 6.61 0.005008 38.85929
0.065 36 Im 9.27 0.003797 -19.4988
0.062 68 Im 8.06 0.008382 -51.8935
0.066 46 Im 8.55 0.009965 -40.5912
Im 9.1 0.000912 1.089013
0.075 32 Im 12.31 0.018141 3.946489
M3(in file1) 和 N5(in file2) 列相同。
根据 M3-N5 列,我想匹配这两个文件并在 Python 中创建第三个文件(输出文件)。
输出.xlsx
M1 M2 M3-N5 M4 N1 N2 N3 N4 N5
97.1859 -59.1873 0.000912 4.55 Im 9.1 1.089013
63.116 -75.958 0.003797 20.85 0.065 36 Im 9.27 -19.4988
112.09 -22.9276 0.005008 2.26 0.057 4 Im 6.61 38.85929
320.7931 -63.4153 0.008382 7.45 0.062 68 Im 8.06 -51.8935
337.8978 -72.8617 0.009965 3.88 0.066 46 Im 8.55 -40.5912
99.2183 -56.5418 0.018141 18.17 0.075 32 Im 12.31 3.946489
我在一个名为 TOPCAT 的程序中做过,但我想在 Python 中做比较。但是我已经开始使用新的 Python,所以我无法编写详细的代码。
我该怎么做?我可以通过哪些代码?
任何帮助或建议将不胜感激。
谢谢。
【问题讨论】:
-
感谢您提供输入和输出数据。它使您的问题非常清楚。为了帮助您,理想情况下,我们还需要查看您尝试过的内容以及您卡在哪里。但是,我的建议是根本不要使用 Python,而只需将其导入数据库(例如 sqlite、mysql、postgresql)并通过连接两个表的查询获取输出。我不知道如果你尝试加入花车会发生什么 - 如果你看,可能有一个简单的方法。
-
如果您必须在 Python 中执行此操作,您应该查看 pandas 库。
标签: python excel compare match