Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Anonymous
Not applicable

Create a custom column that show as text if the line is "Record" or "List"

I have a column in which the values are given as "list" and "record", I cannot pre filter it, the data is given me as such.

 

I would need to be able to filter out lists and records, how can i do that ?

 

I thought of making a custom column that gives if the line is a list or a record in text so i can filter out, if their a way to do it ?

 

Exacrion_0-1670582780856.png

 

 

1 ACCEPTED SOLUTION

Hi @Anonymous ,

 

Please refer to my code and sample.

Whole M Code:

let
    Source = Table.Combine({Table, List, Record}),
    #"Added Custom" = Table.AddColumn(Source, "Custom.1", each Table.SelectRows([Custom])[Column1]),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"Custom.1"}),
    #"Added Custom1" = Table.AddColumn(#"Removed Columns", "Table", each if 
Table.ColumnCount([Custom]) <> Error.Record
then 
"Table"
else
"Record"),
    #"Added Custom2" = Table.AddColumn(#"Added Custom1", "List", each if
List.Count([Custom]) <> Error.Record
then
"List"
else
""),
    #"Added Custom3" = Table.AddColumn(#"Added Custom2", "Record", each if
Record.ToList([Custom]) <> Error.Record
then
"Record"
else
""),
    #"Replaced Errors" = Table.ReplaceErrorValues(#"Added Custom3", {{"Table", ""}}),
    #"Replaced Errors1" = Table.ReplaceErrorValues(#"Replaced Errors", {{"List", ""}}),
    #"Replaced Errors2" = Table.ReplaceErrorValues(#"Replaced Errors1", {{"Record", ""}}),
    #"Added Custom4" = Table.AddColumn(#"Replaced Errors2", "Combine", each if [Table] = "" 
then 
if [List] = "" 
then 
[Record]
else 
[List]
else
[Table])
in
    #"Added Custom4"

Result is as below.

RicoZhou_0-1670838891959.png

I think [Combine] column is the result you need.

 

Best Regards,
Rico Zhou

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

 

View solution in original post

5 REPLIES 5
VijayP
Super User
Super User

@Anonymous 

Go to power query edtior and filter that data!




Did I answer your question? Mark my post as a solution! Appreciate your Kudos!!
MY Blog || My YouTube Channel || Connect with me on Linkedin || My Latest Data Story - Ageing Analysis

Proud to be a Super User!


Anonymous
Not applicable

I am already on power query, my problem is that i want to filter out the data but i cannot as power query refuses to consider lines showing as "List" and "Record" lines as filter targets

 

Exacrion_0-1670584938011.png

 

Hi @Anonymous ,

 

Please refer to my code and sample.

Whole M Code:

let
    Source = Table.Combine({Table, List, Record}),
    #"Added Custom" = Table.AddColumn(Source, "Custom.1", each Table.SelectRows([Custom])[Column1]),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"Custom.1"}),
    #"Added Custom1" = Table.AddColumn(#"Removed Columns", "Table", each if 
Table.ColumnCount([Custom]) <> Error.Record
then 
"Table"
else
"Record"),
    #"Added Custom2" = Table.AddColumn(#"Added Custom1", "List", each if
List.Count([Custom]) <> Error.Record
then
"List"
else
""),
    #"Added Custom3" = Table.AddColumn(#"Added Custom2", "Record", each if
Record.ToList([Custom]) <> Error.Record
then
"Record"
else
""),
    #"Replaced Errors" = Table.ReplaceErrorValues(#"Added Custom3", {{"Table", ""}}),
    #"Replaced Errors1" = Table.ReplaceErrorValues(#"Replaced Errors", {{"List", ""}}),
    #"Replaced Errors2" = Table.ReplaceErrorValues(#"Replaced Errors1", {{"Record", ""}}),
    #"Added Custom4" = Table.AddColumn(#"Replaced Errors2", "Combine", each if [Table] = "" 
then 
if [List] = "" 
then 
[Record]
else 
[List]
else
[Table])
in
    #"Added Custom4"

Result is as below.

RicoZhou_0-1670838891959.png

I think [Combine] column is the result you need.

 

Best Regards,
Rico Zhou

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

 

VijayP
Super User
Super User

@Anonymous Question is not clear , if you can filter with custom column why cant you filter when the data is in the raw format. what is the business logic




Did I answer your question? Mark my post as a solution! Appreciate your Kudos!!
MY Blog || My YouTube Channel || Connect with me on Linkedin || My Latest Data Story - Ageing Analysis

Proud to be a Super User!


Anonymous
Not applicable

I cannot i do not have access to the raw data, it is given me as such via an api

 

Is there a function that would give something like "If column is a record type then "record", else "list" ?

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.