Forum Discussion
Transform columns / type
- 4 months ago
Hi Dicken,
When you write:
Table.TransformColumns(Source, {"anumber", Number.From})you are passing Power Query the built-in Number.From function directly. Because that function has a known return type of number, Power Query can often detect that and update the column’s type automatically.
When you write:
Table.TransformColumns(Source, {"anumber", each Number.From(_)})you are creating a new inline anonymous function. Even though it calls Number.From, that function itself is untyped. As a result, only the values are converted.
To ascribe type explicitly when using each, pass the new column type as third argument:
Table.TransformColumns(Source, {"anumber", each Number.From(_), type number})When you write:
ascribeNum = (x) as number => Number.From(x),
transform = Table.TransformColumns(Source, {"anumber", ascribeNum})you are creating a new function with a return type of number. Like when passing the built-in Number.From function directly, Power Query can often detect that and update the column’s type.I hope this is helpful.
- 4 months ago
In the third parameter you can specify the column type
Why does Power Query behave this way? Is it because of "lazy evaluation"
In the third parameter you can specify the column type
Why does Power Query behave this way? Is it because of "lazy evaluation"
Thanks for all replies i have saved m_dekoets reply, to as I may need to read a few times.
have never notices, transform cols accepts a data type, as to lazy evaluation, thtat is something i''m beggining to underdandn. so thanks to all who repiied.