We have the answers to your questions! - Don't miss our next open house about the data universe!

Power Query Table.SelectRows : How to clean your data?

 m de lecture
Power Query Table.SelectRows : How to clean your data?

Power Query Table.SelectRows is a data cleaning function for Excel and Power BI. Find out all about the benefits of this tool, its use cases and how to master it!

Whether in Microsoft Excel or Power BI, the Power Query tool has become a must-have for data cleansing, transformation and analysis.

It is an ETL (Extract, Transform, Load) technology directly integrated into both software packages. It enables users to connect, transform and model data from a variety of sources, making it ready for analysis.

Its popularity with analysts and other Data Science professionals is mainly due to its powerful functions offering a wide range of possibilities.

One of these functions is particularly useful for filtering and selecting data according to specific criteria: Table.SelectRows.


💡Related articles:

Power BI: Microsoft’s Business Intelligence solution
DAX Power BI: all about the query programming language
Dataflow Power BI: everything you need to know about the self-service ETL tool
Power BI Direct Query: All you need to know about this data query method
Power BI license: What does it cost?
Power BI vs. Tableau: Two tools

What is Table.SelectRows?

This Power Query function lets you filter the rows of a data table according to specific criteria. This is an invaluable tool for reducing the volume of data to be processed, eliminating unnecessary data or creating subsets to meet specific needs.

To understand its usefulness, let’s take the simple example of a dataset containing information on a company’s sales.

Using Table.SelectRows, you can filter the data to select only those sales made in a given period.

For example, this could be just sales for the current year. This filtering reduces the size of the dataset to the bare essentials, allowing you to concentrate on information relevant to the analysis.

Advanced data filtering options

Beyond basic filtering, Table.SelectRows offers many more advanced techniques. One of the most powerful features is the ability to filter data according to multiple criteria.

To take the example of a company’s sales dataset, we might want to select only those sales made during the current year that exceed a certain threshold.

Simply use Table.SelectRows to easily combine these conditions to obtain the desired result. Let’s imagine a sales dataset containing information on products, sales dates, amounts and regions.

The Power Query function offers the possibility of filtering out sales that meet a number of criteria, such as those made in the first quarter of the current year in the North region and valued at over 1,000 euros.

Another interesting technique is the use of the logical operators “and” (AND) and “or” (OR). Here again, these operators can be used to create complex conditions by combining filter criteria.

For example, it’s possible to select sales corresponding to one of two conditions: those made during the current year AND whose value is greater than 1000 euros, OR those made in the South of France.

Custom functions in Table.SelectRows

In addition to its advanced options, a major strength of Table.SelectRows is the ability to use custom functions for filtering. This opens the door to considerable flexibility in data cleansing and transformation.

These custom functions allow you to form complex expressions to filter your data. You can create them directly in the query editor, or import them from external sources.

For example, you can create a custom function to filter out sales whose amount exceeds a given value. This function can then be used in Table.SelectRows to select the corresponding rows in your dataset.

This approach makes sense in many situations. Let’s imagine, for example, that you want to filter sales according to dynamic, user-defined criteria, such as the choice of minimum amount and region. A custom function could be the solution for maximum filtering flexibility!

Performance optimization and error management

Clearly, efficiency is essential when cleansing and transforming data. This is particularly true when dealing with large quantities of information.

Fortunately, there are a number of ways to optimize Table.SelectRows performance.

For example, be sure to apply filters that are as specific as possible to reduce the number of rows to be processed.

On the other hand, avoid overly general filters that select a large part of the data, as this can slow down the query.

If your data source supports indexes, you can also use them to speed up the search for rows matching your filter criteria. Indexes allow you to access data more quickly.

If you only need a few columns in your query result, use Table.SelectColumns to limit the columns selected. This will reduce the amount of data transferred, considerably improving performance.

When working with real data, it’s not uncommon to encounter situations where errors can occur when filtering or transforming data.

Filtering errors can occur when the criteria are not correctly defined, or when the data does not match the specified criteria. For example, an error may occur if you filter dates and some of them are in the wrong format.

Similarly, when data is missing from the source dataset, or when empty values are encountered, this can lead to errors during transformation.

To maintain the reliability of your ETL processes and guarantee high-quality data, it is imperative to detect and manage these errors effectively. Otherwise, the entire query may fail.

To avoid such an inconvenience, you can use the “Try… Otherwise” construct, which allows you to try an operation and handle any errors that may occur. For example, you can try to convert a date and specify an action to be taken in the event of an error.

You can also use Power Query custom functions for more specific management. This provides more granular control.

Finally, another strategy is to generate error reports recording all problems encountered during the ETL process. This enables subsequent analysis and facilitates resolution.

By anticipating and proactively managing errors, you can maintain stable processes and ensure data quality throughout the analysis chain.

Conclusion: Power Query Table.SelectRows, a powerful, customizable filter function

Power Query Table.SelectRows lets you filter data according to multiple specific criteria, helping you to clean up datasets quickly and efficiently.

To learn how to master Power Query and all its functions, you can choose DataScientest. Our Excel and Power BI online training courses will enable you to acquire this expertise in just a few days!

The Power BI training can be completed in 2 to 5 days full-time, or 30 days part-time. It is divided into two parts: one for beginners, the other for advanced users. You can take one or both of them, depending on your objectives and level.

In this course, you’ll learn how to analyze, transform, organize, model and analyze data with Power BI, and how to create dashboards. You’ll also discover more advanced concepts such as Power Query M and DataFlow, or the DAX language.

At the end of the course, you’ll receive the state-recognized “Analyzing Data with Microsoft Power BI” certification, and can also take the Microsoft PL-300 certification exam to become a Power BI Data Analyst Associate!

The Microsoft Excel training course is designed for beginners and advanced users alike. You’ll benefit from three months’ access to Excel, and learn how to handle all the software’s advanced functions.

In particular, you’ll discover automation macros, pivot tables, arithmetic and statistical functions, and various formatting techniques. This course includes the state-recognized TOSA RS5252 certification exam!

All our courses can be completed entirely by distance learning, and are eligible for funding options. Don’t wait any longer and become a Power Query expert with DataScientest!


DataScientest News

Sign up for our Newsletter to receive our guides, tutorials, events, and the latest news directly in your inbox.

You are not available?

Leave us your e-mail, so that we can send you your new articles when they are published!
icon newsletter


Get monthly insider insights from experts directly in your mailbox