【发布时间】:2021-03-28 22:20:27
【问题描述】:
这个问题已经解决了(我认为)。 Excel是问题所在,毕竟不是python。下面的代码应该可以满足我的需要,而且似乎不会删除行。
经过大量跟踪和错误/搜索,这是我在 python 中使用 Pandas 包的首选解决方案:
NEW_MATCHED_DF1 = DF1.loc[DF1['column 2'].isin(DF2['column_1'])]
我看到的问题是,当我将结果与执行相同操作时在 excel 中发生的结果进行比较时,我得到的结果几乎翻了一番,而且我认为我的 python 技术正在删除重复项。当然,有可能我在excel中做错了,或者excel由于其他原因不正确,但这是我过去验证过的,并且对excel更加熟悉,所以我怀疑它更有可能是我在 python 中做错了什么。 EXCEL毕竟是问题!! :/
最终,我想使用 python 来选择 DF1 中 DF1 的 column_2 与 DF2 的 column_1 匹配的任何和所有行。 Excel 速度慢得离谱,我想不再使用 excel 来处理大型数据框。
感谢任何帮助或提供帮助的指示。我真的无法弄清楚我的代码是否确实删除了重复项和/或是否有另一种我可以确信不会这样做的解决方案。
【问题讨论】:
-
在我看来是正确的...你能举一个你没有得到预期结果的例子吗?
-
感谢您说上面的代码看起来正确。除了下面建议的代码之外,这迫使我再次检查 excel 文档,我发现这个特定的 excel 文件实际上存在错误,只有这个文件(我在其他地方没有遇到同样的问题) .你是对的,我认为代码是好的。