Forum Discussion

mjackson's avatar
mjackson
Regular Visitor
3 years ago

sorting one column into two

Hey everyone so here is the issue, I have a column with mixed codes. They are CPT and HCPCS codes. Both are the same number of characters. The CPT codes do not contain letters and the HCPCS codes do. what would be the best way to split this into multiple columns?

 

 

2 Replies

  • Hi,

    you can duplicate your column

    in the duplicated column change Type to Whole Number and replace errors with null

    now add a conditional column

    and rename your columns

    If this post is useful to help you to solve your issue, consider giving the post a thumbs up and accepting it as a solution!

     

     

     

  • Here is a simple solution directly in M. "SourceTable" is your source, which I have given a column name "Column1"

     

    Creating the List called CharList is a little awkward because M does not have a direct way of specifying that a type conversion is *not* valid, so there is some conditional logic to evaluate true to false and error to true (if that makes any sense 🙂 

     

    let
    Source = SourceTable,
    ValsList = Source[Column1], // Create a list made of the column containing the data
    NumeberList = List.Select(ValsList, each try Number.FromText(Text.At(_, 0)) is number otherwise false), // make a list based on the first list, made up of values that start with a number
    CharList = List.Select(ValsList, each if try Number.FromText(Text.At(_, 0)) is number otherwise false then false else true), //make a list based on the first list, made up of values that *do not* start with a number
    MyTable = Table.FromColumns({NumeberList,CharList}) // make a new table of the two lists

    in
    MyTable