在 Excel 中合并多个数据集

在 Excel 中合并多个数据集

我正在尝试在 Excel 中从多个独立数据源编译大型数据库。
我的总体目标是创建一个大表,其中包含蛋白质 ID 列表和一堆各种信息,每行代表蛋白质-药物匹配组合。

使用 VLOOKUP 返回同一蛋白质 ID 号的多种药物时遇到问题。我当前的公式如下:
=IFERROR(VLOOKUP(A469,drugbank_approved_target_uniprot.xlsx!$A$2:$E$7108,4),"No drug")

VLOOKUP 默认仅返回给定 ID 的第一个匹配药物。我想要的是类似下图的东西:
期望结果

基本上,我希望每个蛋白质-药物匹配都占一行。棘手的部分是,与每种蛋白质匹配的药物数量是可变的——每种蛋白质的药物数量在 0 到 20 种之间。
据我所知,没有办法让 Excel 根据查找结果以可变方式插入多行。有没有办法使用 Excel 中的函数来做到这一点,还是我需要求助于 VB 脚本?我还附上了蛋白质-药物匹配数据集的屏幕截图。Uniprot ID 本质上是我想要匹配所有数据的主键。

源数据集

答案1

我认为直接使用 Excel 公式无法做到这一点。对我来说,你有 4 个选择

  1. 使用 VB 脚本
  2. 手动创建大型数据集并使用已应用于您已有的源数据的数据过滤
  3. 手动创建大型数据集并使用外部程序,您可以使用 PHP、ASP、Python 或您可能知道的任何其他编程语言中的函数循环来创建该程序,这些程序可以完成这项工作
  4. 使用 Microsoft Access 可能比选项 3 更容易,因为它是一个专用的数据库软件

相关内容