如何将 excel 附加到现有数据集而不丢失 Foundry 中的其他列?

Posted

技术标签:

【中文标题】如何将 excel 附加到现有数据集而不丢失 Foundry 中的其他列?【英文标题】:How to append excel to an existing dataset without losing additional columns in Foundry? 【发布时间】:2021-02-17 01:13:36 【问题描述】:

背景:我们的业务用户通过邮件收到他们想要导入 Foundry 的 excel 表格 (.xlsx)。我们同意文件和选项卡的给定结构和命名约定,以便简单地将它们拖放到特定文件夹中并将它们附加到现有数据集。然后这个现有数据集的变化会触发一个管道(raw->clean->ontology)。

问题:我们使用“附加列”来清理数据并基于它们应用一些逻辑(_filePath、_byteOffset、_importedAt),但每次添加新的 excel 时,架构似乎都是重置并且“附加列”未勾选。

在将 Excel 工作表导入现有数据集并将其附加到现有数据集后,有没有办法保留“附加列”?

【问题讨论】:

【参考方案1】:

不幸的是,通过拖放界面导入总是会替换导入时的现有架构,这就是您丢失其他列的原因。如果您可以将文件创建为 CSV 而不是 XLS,那么您可以附加并保留现有架构,包括附加列。另一种方法(虽然是间接的)是在 raw 和 clean 之间增加一个步骤,调用元数据 API 来添加可选列。

您需要设置这些 textParserParam 参数:

textParserParams["addFilePath"] = True
textParserParams["addByteOffset"] = True
textParserParams["addImportedAt"] = True

【讨论】:

以上是关于如何将 excel 附加到现有数据集而不丢失 Foundry 中的其他列?的主要内容,如果未能解决你的问题,请参考以下文章

无法在不覆盖的情况下将 R 数据框附加到现有 Excel 中

在 Excel 中合并单元格而不丢失数据

将更多数据集附加到现有 Hdf5 文件中,而不删除其他组和数据集

加载多个数据集而不覆盖变量

如何在现有 csv 文件中写入新行而不将其附加到最后一行?

如何在现有表中添加额外的列而不丢失数据