如何使用 Azure 数据流替换列中的多个文本?
How to replace multiple text in the column using Azure dataflow?
我的数据中有一个名为“位置”的列。我有 100000 条记录。
我正在数据流中使用以下代码清理位置,使用派生列表达式并将新列命名为“Location_new”
case(Location == 'Otago/Southland', "Otago",
Location == 'Nelson - Marlborough', "Nelson",
Location == 'National', "Other")
该代码可以正常工作,但是,它不会为我的整个新专栏替换和获取 null
请注意,上面的代码只是一个例子,由于我的数据很乱,我将替换近 250 个名字。
任何人都可以建议如何克服这个问题吗?有没有更好的方法来清理数据?
我已经回复了样本。您的 case 语句看起来很好,并且您在新列中获得 NULL 值可能是因为您的传入数据不满足任何 case 语句。
正如评论部分提到的Nick.McDermaid,您需要在case 语句中提供else 值,以便在case 语句中的条件none 有效时获取传入值。
没有 else 的案例陈述:
带 else 的案例语句:
case(Location == 'Otago/Southland', "Otago",
Location == 'Nelson - Marlborough', "Nelson",
Location == 'National', "Other",
Location)
我的数据中有一个名为“位置”的列。我有 100000 条记录。
我正在数据流中使用以下代码清理位置,使用派生列表达式并将新列命名为“Location_new”
case(Location == 'Otago/Southland', "Otago",
Location == 'Nelson - Marlborough', "Nelson",
Location == 'National', "Other")
该代码可以正常工作,但是,它不会为我的整个新专栏替换和获取 null
请注意,上面的代码只是一个例子,由于我的数据很乱,我将替换近 250 个名字。
任何人都可以建议如何克服这个问题吗?有没有更好的方法来清理数据?
我已经回复了样本。您的 case 语句看起来很好,并且您在新列中获得 NULL 值可能是因为您的传入数据不满足任何 case 语句。
正如评论部分提到的Nick.McDermaid,您需要在case 语句中提供else 值,以便在case 语句中的条件none 有效时获取传入值。
没有 else 的案例陈述:
带 else 的案例语句:
case(Location == 'Otago/Southland', "Otago",
Location == 'Nelson - Marlborough', "Nelson",
Location == 'National', "Other",
Location)