如何在 google 云数据准备中插入值

How to insert values in google cloud dataprep

我在 Dataprep 中的邮政编码不匹配。我需要在输入不正确的列中添加两位数字。

在 Dataprep 中,我得到了一个替换建议:

'{start}{digit}{3}{end}' with ' '

在替换对话框中,我只能输入一个字符串,而不是 '{start}{digit}{3}{end}',因为它会将其读取为文本。如何替换:

'{start}{digit}{3}{end}'12 + '{start}{digit}{3}{end}'

替换或插入都可以,但我还没有找到插入的方法。

有什么帮助吗?谢谢。

您要查找的是 Merge Transform。它允许将多个列或值合并到一个新列中,还允许在要合并的值之间插入分隔符。

根据你的问题,我了解到你想将 345 这样的数据值转换为 12345,即附加 12 作为前缀。为此,您可以像这样 运行 merge() 公式:

merge(['12',zip])

在这种情况下,zip 只是您要与值 12 合并的列的名称。根据您的具体情况写下您的专栏名称。

下图显示了运行宁merge()公式的结果。


更新:

鉴于您的数据中有正确和不正确的邮政编码,您可以应用 conditional logic function IF 以确定将哪个公式应用于您的数据。 IF() 函数的工作原理如下:

IF(test_expression, true_expression, false_expression)

所以在你的情况下,你应该评估列中项目的长度,并且只添加 12 当行中恰好有三个数字时 ,正如您在评论中所说。我使用的公式如下:

if(len(zip) == 3, merge(['12',zip]), zip)

和结果(使用 IF() [right_new_zip 列时比较] 和不使用时 [wrong_new_zip 列]) 是这些:

最后,让我向您介绍这个不错的 documentation page,您可以在其中找到有关 Dataprep 中使用的语言以及您认为有用的函数的所有信息,按类型分类(逻辑、聚合、字符串、日期等)。