为什么 Alteryx 的这个公式返回 0 而不是平均值
Why is this Formula for Alteryx returning 0's instead of averages
我想知道下面的公式有什么问题。
IF [Age] = Null() THEN Average([Age]) ELSE [Age] ENDIF
我想做什么“如果单元格为空,则用所有其他名为 [Age] 的单元格的平均值填充单元格。
非常感谢大家!
这不是平均函数的工作方式。您需要将整个值列表传递给它,而不仅仅是一个值。
我们在 ETL 过程中进行了大量插补来纠正空值,实际上有两种方法可以完成。
第一种方式:插补工具。您可以使用准备类别中的 "Imputation" 工具。在工具选项中,select 您希望估算的字段,单击要替换的传入值上的 "Null" 单选按钮,然后单击替换为值中的 "Average" 单选按钮部分。直接使用该工具的优点是它比其他方法简单得多。缺点是 1) 如果您尝试修复与机器规格相关的大量行,它可能会非常慢(比下一种方法慢得多),以及 2) 当我们在我们的过程中使用它而没有太多解释时它偶尔会出错.
第二种方法:计算平均值并使用公式。您还可以使用转换类别中的 "Summarize" 工具为每一列生成一个平均字段。生成平均值后,使用加入类别中的 "Append" 工具将它们重新加入流中。数据库中每一行的平均值都相同。届时,您可以在问题中尝试使用公式工具。例如。
IF [Age] = Null() THEN [Ave_Age] ELSE [Age] ENDIF
第二种方法比 运行 对于非常大的数据集要快得多(例如,修复超过 7000 万行的几十列中可能的空值),但设置和必须创建的时间要多得多对于每一列。
我想知道下面的公式有什么问题。
IF [Age] = Null() THEN Average([Age]) ELSE [Age] ENDIF
我想做什么“如果单元格为空,则用所有其他名为 [Age] 的单元格的平均值填充单元格。
非常感谢大家!
这不是平均函数的工作方式。您需要将整个值列表传递给它,而不仅仅是一个值。
我们在 ETL 过程中进行了大量插补来纠正空值,实际上有两种方法可以完成。
第一种方式:插补工具。您可以使用准备类别中的 "Imputation" 工具。在工具选项中,select 您希望估算的字段,单击要替换的传入值上的 "Null" 单选按钮,然后单击替换为值中的 "Average" 单选按钮部分。直接使用该工具的优点是它比其他方法简单得多。缺点是 1) 如果您尝试修复与机器规格相关的大量行,它可能会非常慢(比下一种方法慢得多),以及 2) 当我们在我们的过程中使用它而没有太多解释时它偶尔会出错.
第二种方法:计算平均值并使用公式。您还可以使用转换类别中的 "Summarize" 工具为每一列生成一个平均字段。生成平均值后,使用加入类别中的 "Append" 工具将它们重新加入流中。数据库中每一行的平均值都相同。届时,您可以在问题中尝试使用公式工具。例如。 IF [Age] = Null() THEN [Ave_Age] ELSE [Age] ENDIF
第二种方法比 运行 对于非常大的数据集要快得多(例如,修复超过 7000 万行的几十列中可能的空值),但设置和必须创建的时间要多得多对于每一列。