我正在尝试在存在数字且该数字大于0的列上运行AVG,该列具有混合数据,大多数字段将具有数字但是一些信用结果返回NA或DNR。
以下表达式检出为OK,但不返回任何值。我知道AVG表达式正常工作,因为我在干净的数据上使用它。我相信错误来自IsNum
=if(IsNum(Credit) = '-1', Avg({< [Credit] = {"<>0"} >} [Credit]), (Credit))
答案 0 :(得分:1)
在脚本中创建附加列可能更好,指示Credit
值是否为数字。
if( isNum(Credit), 1, 0 ) as isNumberCredit
在此之后,你的表达变得简单。
avg( {< isNumberCredit = {1} >} Credit )
OR
avg( Credit * isNumberCredit )
使用此方法会降低较大数据集的性能。