Python and R compatibility across Power BI products
The first question once you are clear on where to inject R and Python scripts in Power BI could be: “Is the use of R and Python code allowed in all Power BI products?” In order to cover that, let’s briefly recap the various Power BI products and their usage in general. Here is a concise list:
- Power BI service: This is sometimes called Power BI Online, and it’s the Software as a Service (SaaS) version of Power BI. It was created to facilitate the sharing of visual analysis between users through dashboards and reports.
- Power BI Report Server: This is the on-premises version of Power BI and it extends the capabilities of SQL Server Reporting Services, enabling the sharing of reports created in Power BI Desktop (for Report Server) and Power BI Report Builder for Power BI paginated reports.
- Power BI embedded: A Microsoft Azure service that allows dashboards and reports to be embedded in an application for users who do not have a Power BI account.
- Power BI Desktop: A free desktop application for Windows that allows you to use almost all of the features that Power BI offers. It is not the right tool for sharing results between users, but it allows you to share them on the Power BI service and Power BI Report Server. The desktop versions that allow publishing on the two mentioned services are distinct and support slightly different sets of features. They are named Power BI Desktop and Power BI Desktop for Power BI Report Server, respectively.
- Power BI mobile: A mobile application, available on Windows, Android, and iOS, that allows secure access to the Power BI service and Power BI Report Server, and that allows you to browse and share dashboards and reports, but not edit them.
- Power BI Report Builder: A free desktop application for Windows that allows you to create paginated reports. These can then be published and shared in the Power BI service and Power BI Report Server.
Apart from the licenses, which we will not go into here, a summary figure of the relationships between the previously mentioned products follows:
Figure 1.15: Interactions between Power BI products
Unfortunately, of all these products, only the Power BI service, Power BI Embedded, and Power BI Desktop allow you to enrich data via code in R and Python:
Figure 1.16: Power BI products, compatibility with R and Python
IMPORTANT NOTE
From here on out, when we talk about the Power BI service in terms of compatibility with analytical languages, what we say will also apply to Power BI embedded.
So, if you need to develop reports using advanced analytics through R and Python, make sure the target platform supports them.