*Chapter 1*: Where and How to Use R and Python Scripts in Power BI

Power BI is Microsoft's flagship **self-service business intelligence** product. It consists of a set of on-premises applications and cloud-based services that help organizations integrate, transform, and analyze data from a wide variety of source systems through a user-friendly interface.

The platform is not limited to data visualization. Power BI is much more than this, when you consider that its analytics engine (**Vertipaq**) is the same as **SQL Server Analysis Services** (**SSAS**) and **Azure Analysis Services**. It also uses **Power Query** as its data extraction and transformation engine, which we find in both Analysis Services and **Excel**. The engine comes with a very powerful and versatile formula language (**M**) and GUI, thanks to which you can "grind" and shape any type of data into any form.

Moreover, Power BI supports **DAX** as a data analytic formula language, which can be used for advanced calculations and queries on data that has already been loaded into tabular data models.

Such a versatile and powerful tool is a godsend for anyone who needs to do data ingestion and transformation in order to build dashboards and reports to summarize a company's business.

Recently, the availability of huge amounts of data, along with the ability to scale the computational power of machines, has made the area of **advanced analytics** more appealing. So, new mathematical and statistical tools have become necessary in order to provide rich insights. Hence the integration of analytical languages such as **Python** and **R** within Power BI.

R or Python scripts can only be used within Power BI with specific features. Knowing which Power BI tools can be used to inject R or Python scripts into Power BI is key to understanding whether the problem you want to address is achievable with these analytical languages.

This chapter will cover the following topics:

- Injecting R or Python scripts into Power BI
- Using R and Python to interact with your data
- R and Python limitations on Power BI products