Forum Discussion

PietroFarias's avatar
PietroFarias
Resolver II
6 years ago
Solved

Find the match between two lists and columns

I have two lists or columns. One with the answers made by some people (LIST_1) and the second with the correct alternatives (LIST_2). How can I, in POWER QUERY, return the number of lines that match?

 

I speak list or column, because I would imagine that finding the lines that coincide as a list would be the best way. But, if possible as a column, it can also be useful.

 

Sample

 

  • Hi, PietroFarias 

    let
       List_1 = {"E", "B", "C", "B", "E", "B", "C", "E", "E", "C", "A", "E"},
       List_2 = {"A", "A", "A", "B", "C", "D", "E", "B", "D", "C", "A", "B"}
    in List.Count(List.Select(List.Zip({List_1,List_2}),each _{0}=_{1}))

    If my code solves your problem, mark it as a solution

    ziying35

4 Replies

  • camargos88's avatar
    camargos88
    Community Champion

    Hi PietroFarias ,

     

    Try this m code:

     

    let
    List_1 = {"E", "B", "C", "B", "E", "B", "C", "E", "E", "C", "A", "E"},
    List_2 = {"A", "A", "A", "B", "C", "D", "E", "B", "D", "C", "A", "B"},
    Match = Table.RowCount(Table.SelectRows(Table.FromColumns({List_1, List_2}), each [Column1] = [Column2]))
    in
    Match

     

     

  • ziying35's avatar
    ziying35
    Impactful Individual

    Hi, PietroFarias 

    let
       List_1 = {"E", "B", "C", "B", "E", "B", "C", "E", "E", "C", "A", "E"},
       List_2 = {"A", "A", "A", "B", "C", "D", "E", "B", "D", "C", "A", "B"}
    in List.Count(List.Select(List.Zip({List_1,List_2}),each _{0}=_{1}))

    If my code solves your problem, mark it as a solution

    ziying35

  • Hey PietroFarias ,

     

    We can achieve this using this simple technique also:

     

    Exepected Output:

     

     

    Step1 : Add a conditional column

     

    Enter the details as shown in the picture

     

    • New column name= Result
    • If Column Name = Students Answers (Column)
    • Operator= Equals
    •  
      Value= Correct Answers (Column)

      In the value's list Select a column

    • Output = Correct
    • Else = Not Correct

    Then Click on OK

     

     

     

    Result

     

    If your problem is solved then please accept this as solution.

     

    Thank you