【问题标题】:Compare two excel files using R使用R比较两个excel文件
【发布时间】:2021-08-26 18:49:40
【问题描述】:

我有两张 Excel 表格,每张表格有约 30 列和百万记录。我想逐行比较这两个excel文件。我不想使用 vlookup 函数,因为我需要编写大约 30 个公式。您能否告诉我是否可以在 R 或其他工具中进行比较?

【问题讨论】:

  • 数百万条记录....嗯,Excel 没有数百万行。你可以试试Spreadsheet Inquire,但我不确定它是否能很好地处理这么多数据,或者根本不能。这些是 Excel 文件还是 CSV?不一样。
  • 我不清楚你想比较多深。例如,如果您正在寻找完美的identical,则将它们读入 R(例如,openxlsx 包)到dat1dat2,然后identical(dat1,dat2) 会给你一个布尔返回(那里这可能是个问题,但鉴于我们目前所知道的,这是一个开始)。如果您需要更多,我建议您通过为两者提供 sample(小!)数据来使这个问题更具可重复性,并准确解释您认为比较应该如何结束。
  • 请澄清您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: r excel file compare


【解决方案1】:

在 R 中,您可以使用这两个包:dplyrdata.table。第一个 (dplyr) 提供了 anti_joinsemi_join 函数,可用于比较两个表。第二个 (data.table) 将帮助您有效地从 csv 文件加载数据(您可以将 excel 文件导出到 csv 文件)。 将第一个表加载为table1,将第二个表加载为table2anti_join(table1, table2) 将从table1 获取所有行,而table2 中没有匹配项。

参考上面提到的dyplr函数: https://dplyr.tidyverse.org/reference/filter-joins.html

【讨论】:

  • "...你可以比较一些扩展两个表。"这英语不清楚。您能否详细说明一下,以便我们可以在这里了解您要说的内容?一旦我理解了,我不介意编辑。
  • 请在您的回答中提供更多详细信息。正如目前所写的那样,很难理解您的解决方案。
  • 我已经编辑了我的答案。我希望它更清楚。
猜你喜欢
  • 2019-06-27
  • 2022-11-07
  • 2020-12-13
  • 1970-01-01
  • 2012-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-14
相关资源
最近更新 更多