Alteryx 将数字的第一个整数分开并放在新列中

Alteryx separate the first integer of a number and put it in a new column

我只有一列有一个 8 位数字。没有点、逗号或任何变位。只有整数。 我只是想从数字中提取 first 整数并将其放入名为 "First integer" 的新列中。我希望其余的整数保持不变,要么按原样转到新列,要么留在现有列中但没有第一个整数

例如现在我有:columnA: 23456789

我要第一个 Integer:2 columnA: 3456789

我对 Alteryx 还很陌生,所以这对某些人来说甚至可能是一个荒谬的问题 :P 但非常感谢任何帮助:)

假设 [i] 是您的 Alteryx 工作流程中的相关数字字段。

然后使用公式工具,这个表达式将给出第一个数字:

[i]/POW(10,FLOOR(LOG10([i])))

这将给出剩余的数字:

MOD([i],POW(10,FLOOR(LOG10([i]))))

解释:由内而外计算:Log10([i]) 告诉您正在处理的 10 的多少次幂,FLOOR 只是四舍五入,POW(10,...) 将它相乘。 .. 所以基本上对于一个 8 位数字,这给出了 10,000,000。然后你只需除以得到第一个数字,或者取 MOD(模数)得到剩余的数字。

PS,你的问题提到了一个 8 位整数......如果你绝对确定你的整数总是有 8 位数字(并且第一个数字不是零),那么你可以快捷方式这个: firstDigit=[i]/10000000 和 remainingDigits=MOD([i],10000000).