Why use Python with Power BI? You’ll get better, more precise results than you can using Power BI alone. Python is flexible and fast to develop with, making it highly productive. Used with Power BI, Python helps open access to additional visualization libraries. When combined with Power Query, Python can be used for data cleansing, advanced data shaping and even predictions and clustering. Best of all, Python is free and easy to learn.
Watch our on-demand Python with Power BI webinar to learn the basics for getting started. You’ll learn what libraries are needed and how to set up the software.
We show you how to use Python scripts to
- Create data
- Connect to an existing data source
- Build a report
- Transform data with Power Query Editor
Watch this if you’re serious about analyzing data and interpreting the results.
Presenter
Patrick Powers
Trainer and Consultant
Senturus, Inc.
Patrick has 21 years of experience in data science, business intelligence and data analytics. He is a Tableau Certified Associate and a Cognos expert whose product experience goes back to version 6. He is also versed in Actuate, Hyperion and Business Objects. His certifications include multiple programming languages, including Java and C++, and database certification (MS SQL).
Read moreMachine transcript
Welcome to the latest installment of the Senturus as Knowledge Series. Today, we’ll be discussing the topic using Python with Power BI.
0:19
Before we get into the presentation, a few housekeeping items.
0:22
Please feel free to use the GoToWebinar control panel to help make the session interactive while everyone’s microphone is muted out of courtesy to our presenters, We encourage you to enter questions in the questions portion as illustrated by the graphic here.
0:37
We’re usually able to respond to your questions while the webinar is in progress, but for somehow unable to cover all the questions. either here or in the Q&A section at the end of the webinar, we will post a written response document to Senturus.com after the webinar.
0:54
Question we get early and often is, can I get a copy of today’s presentation and the answer is absolutely.
1:00
It’s available on senturus.com. You can select the Resources tab and then the Knowledge Center.
1:07
Alternatively, you can click the link that was posted in the chat window in the GoToWebinar control panel.
1:13
While you’re there, be sure to bookmark our resource library, as it has tons of valuable content addressing a wide variety of business analytics topics.
1:21
Our agenda today, after some introductions, we’ll be having a discussion of Python and Power BI.
1:30
That will include Python basics, configuring Power BI Desktop, using Python for data, Python visualizations, and transforming data.
1:39
Our presenter will be doing some demos.
1:41
Then, when we’re done, we’ll cover some additional resources and a quick Senturus overview, but make sure you stick around for the aforementioned Q&A, should we have any residual questions?
1:54
Introductions, I’m pleased to be joined today by my colleague, Mister Patrick Powers. Patrick has 20 years of experience in data science, business intelligence, and data analytics.
2:03
He’s a Tableau Certified Associate Cognos and Power BI expert whose product expertise goes back to version six.
2:10
He’s also Burst and Actuate Hyperion and Business Objects and Certifications include multiple programming languages, including Java and C++, as well as Python, and database certification in Microsoft SQL Server, My name is Michael Winhauer. I’m a director here at Senturus, among my responsibilities. I have the pleasure of hosting our Knowledge Series events.
2:32
As usual, we like to put our finger on the pulse of our audience, so I’ve got a couple of polls here for you.
2:38
Today’s first question is, what is your preferred scripting language to select?
2:42
Python are something else or you don’t use a scripting language?
2:49
I didn’t get those votes in, we’re giving people about 30 to 60 sec to get those votes, and we’ll see how, well caffeinated all are and how on your toes.
2:59
We’re up to about three quarters already, so you’re paying attention.
3:06
All right, I’ll give this a few more seconds here.
3:14
Close this out and share it, So Python 38% split, 10% between R and others. And after you don’t use a scripting language. So it’s pretty interesting.
3:25
And Python is a good way to get started with scripting. And Patrick will show you a great way to get started with Power BI. So this should be very educational for you folks.
3:35
And the second poll we have is, Do you create your own advanced queries with M?
3:42
Please select yes or no.
3:44
For those of you don’t know, you’ll obviously answer no, M is the proprietary Microsoft language for that Power BI Power Query uses to execute queries.
3:57
So go ahead and weigh in on that one.
4:02
And we will give that a few more seconds.
4:10
Go ahead and close that out, share it back.
4:13
So about a quarter of you do so, and about three quarters now, it’s what I’d expect, Most people don’t mess around with it, but there’s some people there that are fairly steeped in M. So, there you have it.
4:23
Hopefully, that’s interesting.
4:25
Thank you for sharing your experiences and your insights. And with that, I’m going to hand the floor over to Patrick. Patrick, take it away.
4:38
Welcome, everybody.
4:43
So we today, are going to talk about Python and Power BI, as Mike said. Also, Mike, I have a lot to go over today. We don’t want to have the issue we had last time, so please make sure you tell me to shut up. So in case I’m not watching the clock closely enough, I want to show you guys everything.
5:02
But unfortunately, we never have enough time for everything.
5:19
Let’s start with a simple question. What is Python?
5:23
Well, it’s an interpreter interactive, object oriented programming language.
5:29
Technically it’s scripting language, but hey, we’ll call it a programming language for the purpose of this.
5:36
Very easy to use and that’s why it’s got so much love from people. It is so simple and easy to use.
5:45
It’s just so gosh darn logical, I mean, it really is not to mention the fact that you can port it to so many different things. You can port it out to Windows, to Linux, to Mac OS.
5:59
And it’s extensible.
6:00
You can extend it with C and C++.
6:04
Now, here’s your useless piece trivia for the day.
6:08
No, it was not named after a snake. It was actually named after Monty Python’s Flying Circus.
6:16
And if you don’t know that as well, you, you’ve lived a very sheltered life and, you know, I feel bad for you.
6:24
When I say it’s easy to learn, look, How easy is this? Wow, if I can type today, Tata, you just learn Python.
6:39
It really is that easy gang.
6:43
So why is it with Power BI?
6:46
Because it is so easy to learn, because it is easy to create these scripts.
6:53
It can help you with things like automation, creating visuals, even machine learning modules.
7:01
Most people are probably going to use it to create visuals.
7:06
Same thing goes with our.
7:08
a lot of people will use these kinds of scripting languages primarily for that visualization language, but using Python gives you access to visualizations that may not already be inside of Power BI.
7:25
And I’m going to show you some examples of that today, and I’m going to show you here on the slide in a second, but I’m going to show you an actual example of something that’s not they’re not in there.
7:34
In addition to that, when you use it with Power Query, you can use it for data cleansing, data shaping, predictions, clustering, and this is what Mike was getting out with the poll.
7:47
Instead of writing M code, you can do things in scripts, and combine multiple steps from Power Query into a single Python script.
8:00
How exciting is that?
8:03
All right, look, you know, artists make these things exciting, people.
8:06
Whoo, ah, some basic stuff.
8:13
You do have to have a base installation of Python installed go figure.
8:17
Most importantly there are two primary packages that get used: handers, which is for data manipulation and analysis and Matplotlib, which is just fun to say Matplotlib.
8:32
This is the plotting library.
8:36
This is where we’re going to do.
8:39
Visualizations from Snobs Story Ended API lets us do things like taking two Kinter, W X, Python, GTK+, etc.
8:52
Once it’s installed, we have to configure Power BI, and I’m going to show you that in a moment where you do that.
9:00
And we can use Python to create data, and that can be either hard coded or I can connect to a database.
9:12
And again, I’m going to show you these needed in the demos. Amanda, thank you very much. She put a comment saying, I’m the most energetic teacher ever.
9:35
We create visuals with pandas in Matplotlib.
9:41
Here’s a beautiful line Look it out beautiful.
9:44
That is Matplotlib is an open source library.
9:49
So we can have static, animated and even interactive visualizations.
9:55
Things that you don’t get out of the box or you’re all sitting there going well, I can just click get more visuals.
10:03
Yeah, a lot of those want you to pay for them down.
10:07
So oh look Matplotlib, open source free the magic word for so many of you Why, why pay for it?
10:18
I can use this and write a script. Check these out. These are three examples of visualizations that you can create with map plot lib that are not currently in Power BI and these are just three small examples.
10:38
If you go to the mat plot live web site, dozens more, look at, look at this cool image of a brain, look at these neat things, OK?
10:53
That’s where you’re all going, ooh, ah, So, so much can be done.
11:00
Get back to the right window a big dummy.
11:05
In addition to that, again, it can be used in Power Query Editor, Missing Data, Pivot, and Pivot, column, Removal Row Removal, instead of having 10 different steps, one script, one script, all that’s done with pandas.
11:29
There is a nice panda’s cheat sheet, and I will actually share that link with you all.
11:41
I will share this into the chat window with everybody.
11:48
So here’s a great cheat sheet for pandas.
11:52
It’s a PDF, you can print it out, but look at everything that you can do here. These are all data manipulations that you could do in a single script.
12:01
Melting pivoting can cat, drop columns, rename columns, all of this.
12:07
Why would you want to do this Externally or in a script versus internally you can combine all this.
12:16
You can do more testing with it, you can see the results of all these things at once just makes it nice and easy and portable Portability is key here?
12:30
Time for the demos. Time to see this in action, ooooh!
12:38
So we’re going to, we’re going to take a look at configuring Power BI, Creating Data, How to build a visualization and How to transform data. I’m going to show you all four of those.
12:48
So, let’s do it to it.
12:50
Here’s my blank, Power BI Desktop.
12:54
After doing an installation of Python, OK? And that’s key. You do have to have an installation of Python, has to be one ready to go.
13:04
Where did my stupid thing go?
13:07
The other thing is, you do have to have it installed.
13:09
And when you do the installation, I would strongly encourage you to make sure you add it to the path.
13:19
There is an option, when you’re doing the install. Let’s see if I can get that.
13:25
Show up here on the screen. There’s an installer, there’s an option when you’re doing the install.
13:30
To add Python to the path, if you have Python installed, it will prompt you and say, hey, do you want to customize? You want to change things right here.
13:42
I would strongly encourage you to check that when you do your installation.
13:48
Yes, I’m sure I want to cancel.
13:50
Once it’s installed, once turn your path, file options and settings options.
13:59
Well, bam.
14:01
If it’s in your path, it’s going to pick this up auto magically.
14:06
You’re not going to have to worry about anything.
14:10
Let’s look at this real quick detected Python IDEs.
14:14
You can use an external environment to write and test your Python code.
14:24
If installed, it’s going to want to use VS code.
14:30
And for those of you that aren’t familiar, there are differences. There is Visual Studio, which some of you may be familiar with.
14:37
There’s also Visual Studio code which is free download.
14:44
It’s great, little application, great little place to write things.
14:48
If it finds it, it can pick it up.
14:51
And this gives you the option of copying and pasting code out, too, an external ID, testing it, making sure it runs. I can run this without debugging. Oh, look. There’s all my stuff it ran. There’s my code.
15:09
Ooh, ah, then I can just copy and paste this right into Power BI.
15:13
Because I know it works. I know, it’s good. I know I have no issues.
15:19
So visual state, you can all tell that I’m a developer, right? Because everything’s in dark mode whenever possible.
15:26
How do you not live in dark mode? people?
15:30
Once this is set up, you’re done.
15:32
You’re good to go.
15:35
That’s all there is to it.
15:37
So let’s see how to use Python.
15:43
As a data source.
15:44
So I’m going to come up here and I’m going to get data.
15:49
I go to other Python script.
15:53
Now I will say this, please understand.
15:59
I am not here to teach you Python.
16:03
I’m here to show you how to do it in Power BI.
16:06
OK, So, Python, direct questions?
16:13
Please, I just, unfortunately, I can’t answer those.
16:18
I’m here to show you.
16:22
How to use it in here.
16:24
OK, now I’m trying to see if I can get a quick answer to the question that just came in.
16:33
Ah, Power BI.
16:36
So, this is to June’s question June’s question.
16:43
Python runtime support in Power BI is 2.7 point 1 5 and 3.71 and later.
16:52
OK, so, June again, in the Python two, it’s 2.7 point 1 5.
16:59
Python three, It’s 3.71.
17:02
I’m using 3.9 today.
17:08
All right, so I’m going to connect.
17:12
And I am just going to copy and paste the script I already, Everett.
17:18
And here you go.
17:20
I’m importing Panda’s so I’m importing my library.
17:24
I’m creating a matrix called Data of Name and Age.
17:30
I’m turning that into Columns, Name and Age using the Pandas data frame.
17:37
Then that print statement is crucial.
17:41
If you don’t put a print statement in there, you won’t see the table.
17:47
Trust me, I found that out the hard way.
17:50
But that’s it for lines.
17:55
I get my navigator, oh, look, there’s my data table. Now that data table name is completely arbitrary. I could have called this user info. I could have called it whatever I want.
18:13
And come on.
18:19
Oh, hey, come on. There we go. I sacrificed everything as needed. And now, I have.
18:33
Tata.
18:35
I just built my own table using a script.
18:40
All right, that’s fine and dandy.
18:42
But what if I’ve got a database I want to connect to?
18:45
Well, I’m glad you asked.
18:49
You didn’t, but, you know.
18:54
Hi, other Python script. And this time, I’m going to connect to a cloud based Azure server.
19:04
To do that, I’m going to use a different library.
19:08
I’m going to use Hi ODBC, as well as pandas.
19:16
And I’m just building a connection, string, tell it what kind of, driver, what the database name is.
19:23
And yes, you can see my user ID and my password. Those can actually be hidden. You can pass through pio DBC, single sign on information, things like that.
19:36
You just going to read a bunch of documentation.
19:39
Passing that connection string, and then there’s my SQL query right here.
19:44
Now, in this case, I’m doing a select star.
19:48
The advantage of doing something like this and doing it in a script is when you have those, those just complex types of SQL queries, you know, it’s the folks who use Cognos and write SQL in Cognos all the time because they just can’t get what they need directly for a model. Same thing here.
20:14
Hey, I’ve got 10000 tables in my data warehouse. I already know which ones I need.
20:20
I already know which ones I have a query already written to get me what I need, great, copy and paste it in here.
20:29
Do not re-invent the wheel, OK? one of the signs of a good developer is laziness.
20:38
And that’s laziness by copying and pasting using existing code, etc. So here we go.
20:48
Once again, note my print statement, I’ve got to have my print statement.
20:55
Mmm hmm.
20:59
And look at that: Neat Tata.
21:11
Pretty cool.
21:17
So, I can load.
21:25
And there’s my SQL query. Now, if I want to use this.
21:35
I’m going to change that real quick.
21:38
I do have to manually build a join in this case, only because there are two different names, So it did not pick the join up automatically, So I’ve got a go ahead and do that on my own.
21:49
Now that I’ve got my data in it, now, I can use Python to go ahead and create visualizations.
21:58
Ah.
22:00
I can use Python to create visualizations.
22:03
So let’s go back to our report view.
22:06
Start a new page.
22:09
And I’m going to go ahead and I’m going to add a Python visual to my canvas.
22:15
It’s going to ask me, hey, do you want to enable scripts, be careful of your copy and paste this?
22:23
It could be from a bad people Yeah, yeah, yeah.
22:28
Resize that.
22:31
And note, that window down below, when you’re using Python, your script editor appears down below, and drag fields into the values area to start scripting.
22:46
Until there is something here, this box is dead.
22:54
You don’t have to use everything you put in here.
22:58
But you have to put something in here.
23:02
So I’m going to add salesperson, name, and sales amount.
23:08
Just two things.
23:11
And once I do that, there’s some code that’s automatically generated.
23:21
Notice it’s calling pandas, and it’s passing those two fields in a data frame.
23:27
It’s also doing a drop duplicates function.
23:32
From here, I add my own code.
23:35
So let’s see what we can do with good, old Matplotlib.
23:41
Intelligence. It’s fun to say.
23:43
three lines of code, I’m importing the library, I’m doing a plot.
23:52
And on that plot, I’m saying I want it to be a bar.
23:59
I want salesperson on the X I want sales amount on the Y, And that very last thing is the plot shall.
24:09
To see this, I need to run my script.
24:18
I’m going to click that Runs script.
24:24
What law?
24:26
Look at that.
24:30
I know, so exciting.
24:32
Now, I could clean this up, and I could clean this up, either using the Formatting tab, or in my script itself.
24:42
I could do it in either one.
24:45
I can also change the aggregation.
24:49
So if I wanted to say, hey, show me an average, Don’t summarize it, so I can see multiple values, etc. So I still have control over it.
25:05
Kiersten, I’m going to show you a demo in a second with data that is in the script or not, or, sorry, not in this class, but or not in this webinar. But, yes, I could have gotten my data any other way.
25:21
So, the data portion of this and the, the visualization portion of this, totally separate, you don’t have to create your data.
25:30
I could have just had a regular database connection, XLS connection and still use this script.
25:38
So the question was is can you do this with data, not Imported? Absolutely.
25:43
They are independent things.
25:48
All right, let’s look at Want a little more exciting.
25:54
Checking my time, I’m doing good.
25:59
You know what I’m in the mood for.
26:02
I’m in the mood for a good pie, Mmm, everybody likes pie.
26:09
Pie is like the eagle’s.
26:11
I don’t care what kind of music you like, but everybody likes at least one Eagle’s Song, same thing with pie, pie for everybody.
26:20
So, again, I dropped a Python.
26:24
Visualization on here, Resize it to Fit Screen.
26:28
I have to bring something over to values so I’m going to do the same date I just did.
26:35
So you can see the same thing in a different way.
26:42
Pong is asked when I bring it in, does it consider to be important mode or direct query mode?
26:47
It considers it to be import mode. So these are both imported.
26:53
Which means that I can manipulate them in Power Query Editor.
27:00
They are import mode.
27:03
All right, so I’m going to copy another script because I’m lazy.
27:10
Now, this one.
27:13
Look at that, like, like, 1, eight lines of code, but look at all the things we’re doing here.
27:22
I’m importing that plot live again.
27:26
I’m setting some variables.
27:28
I’m creating a variable.
27:33
OK?
27:37
I’m creating a second one for the sizes. And identifying some colors.
27:49
These could be hex values.
27:52
I just picked names, so you can see what I was doing.
27:55
And I’m creating a variable for my explosion.
27:58
Explosions, Yeah, yeah, I going to make this exciting somehow.
28:02
I want my access to be equal.
28:04
And once again, this is the equivalent of a print statement, my plot show, All right?
28:13
And I’m going to hit that, that run button.
28:20
Do do do. Who’s excited? Somebody’s going to be excited.
28:25
Oop.
28:29
Yes, it will regularly prompt you to re enable.
28:32
That is the one thing I’ve found that kind of makes me just go, get, but look at that.
28:39
Look at my fancy pie, with chateaus, with percentages, with labels, OK?
28:53
Neat, and it really didn’t take much in terms of scripting.
29:00
Those percentages, by the way, that’s right here.
29:04
That’s part of my pie parameters, things I’m passing. Same thing with the shadow. Same thing with the angle.
29:12
one more question, Paul asked, If there’s performance issues, I, personally, have not noticed any performance difference between these two.
29:23
I think that that’s going to depend upon the complexity of your script, the complexity of your environment, etc, Because you are passing this to the local OS to call Python.
29:35
Now, I’m running on an eight core with 64 giga of physical memory off of an SSD drive.
29:41
So, yeah, I got, I got the performance on my side, so I’ve not noticed any performance difference.
29:50
But that’s not to say that you might not, I don’t want to.
29:54
I don’t want to really put myself out there on that.
29:57
There was a comment made to me that, about machine learning and AI.
30:03
That is one of the other big advantages to using data in this fashion, by the way.
30:10
Being able to load data from Python, from a database or anything else, getting it through a machine learning script, and then bring it in, that’s where we see a big advantage.
30:25
Well, I mentioned that, hey, you can also copy and paste existing scripts, and you can do things that don’t exist.
30:36
Let me put my money where my mouth is.
30:40
Add another Python.
30:43
Now watch this. This is going to be kind of interesting in a minute ago I said you don’t have to use everything you put into values.
30:49
So I’m just going to throw name into values, which gives me my Python window.
30:56
Do 17 different windows open which one do I want I want that one that one and I want This is from that plot lib Here is existing code OK.
31:16
It’s a sample code I’m literally going to copy it from that plot lib.
31:26
I’m going to drop it in.
31:31
This one is creating its own dataset.
31:37
OK, so I’ve got a variable called, X with these, with these pieces of data. Why these pieces of data?
31:45
Creating a function called R, which is the square root, creating my, my sign of R.
31:52
Nowhere in here, am I using Name?
31:58
What bam, I come on, somebody had to have been impressed with that.
32:05
I, so completely created the data in the script, completely did everything in the script.
32:15
And I end up with that.
32:18
Think about it, if you have existing scripts, if you have existing visualizations, and they have the color of the data already in them.
32:30
Well, bam.
32:33
I think that’s kind of nifty.
32:36
And I could have I could copy other ones too, if I really wanted to.
32:40
I wanted to copy something else from here.
32:44
Say, look, what about this fancy fields curve, OK?
32:52
Boop, Boop! boop!
32:54
I think I have to copy the whole thing. Now I’m going off script here for a minute, which always makes me nervous.
33:01
Guy, you going to live, Dangerously right Gang.
33:07
You do don’t know if that’s going to work with the help. So I need that bottom piece, too.
33:15
Right there.
33:21
Oh, all right. So that one does not work. I don’t have an X defined.
33:25
I’d have to play with this script and see what’s going on, but, hey, that one worked beautifully and I just copied and pasted it.
33:34
Now, here’s where I would use my external ID because I could copy all this out to my external IDE out to VS code and I could sit here.
33:51
I could test this.
33:55
I could test this and see what I’m missing and what’s not right.
34:01
Could be that this particular library is not supported.
34:05
It does not support all libraries. There is a list on Microsoft’s site, of what libraries are supported. So it could just be something as simple as, Hey, doesn’t support
34:18
NumPi but Command … is more fun.
34:22
Let’s take a look at the last part of this Python in Power Query Editor.
34:29
What I’m going to do is I’m going to go ahead and I’m going to use.
34:35
To do an Excel workbook, please write folder.
34:41
No logical.
34:45
Do I’m going to get to my folder here.
34:48
So here I’ve got an XLR file.
34:52
And if you’d like to see this XML file, because I know you do, It is in some serious need of cleansing.
35:02
It is not something that could be used right away.
35:07
Let’s take a look and see what I mean by that.
35:12
So here it is.
35:16
That’s one tab. That’s not the useful tab.
35:20
Doesn’t like having three different resolutions on three different monitors when you’re trying to do this.
35:26
Look at that.
35:28
That needs cleansing before I can use it in Power BI, right.
35:35
So I’m going to bring that in.
35:40
Brand, the Equipment by Suppliers tab.
35:43
Now I’m going to go into Power Query Editor.
35:49
Now, just for the sake of time, I’m going to go ahead, and I’m going to do sum.
35:54
Some manual stuff real quick here, I’m going to get rid of the promoted headers and change type steps.
36:01
And I want to go ahead, and I’m going to manually get rid of these two columns. Now, I could easily put this into my script, too. There is a Pandas for remove columns.
36:10
But this is just for the sake of time.
36:13
So here it is.
36:15
Here is my data, as it is imported.
36:19
And I’m going to clean up multiple steps using a script.
36:25
So I’m going to go to Transform, Run a Python script.
36:32
Du du du du.
36:35
Once again, I’m importing panda’s I’m defining my data set.
36:41
I’m getting rid of I’m dropping the first two rows.
36:46
And I’m going to backfill this column.
36:51
So I’m combining multiple steps into a single script. And again, I could also add a melt step to un pivot this.
37:02
I could add a remove columns to have gotten rid of columns 15 and 16, all of that. So instead of having 10 different things over here.
37:14
One script, once again, it’s prompt me about safety levels.
37:25
There it is. My first two rows are deleted.
37:30
And it back filled my one column.
37:33
One script, one script.
37:40
Tada, this why would you want to do this?
37:47
This can help you avoid having to write M, OK?
37:55
It can help you avoid writing M Because if you look at the M for this, you see right there, run Python script.
38:04
So instead of trying to learn how to parse emme, you’re parsing a language, you already know.
38:14
Makes it easier to maintain.
38:16
Makes it easier to troubleshoot, OK?
38:22
So you’re doing something you already know and you already familiar with M M is not an easy language to learn.
38:30
Not the Python’s easy but there’s a lot more people out there being taught Python in school.
38:37
You know, there’s kids getting taught Python at the Grade school level these days.
38:43
So imagine you get somebody in, who’s, yeah, I just spent the last four years writing Python code in school.
38:53
That’s a lot easier than trying to get somebody to learn how to use them.
38:59
OK, so I did go nice and quick to make, to make my copy, we actually have 20 whole minutes for you for your mic.
39:11
I will answer one more question. Larissa. I’ve never done a side-by-side test, but I, again, I would have to take into consideration the fact that it is calling the os acids calling out to Python on the computer, on the local machine.
39:29
I think, again, it would have to be a complexity thing.
39:34
Those, that’s a very fair question, and I would have to write a script of equal complexity to test them side-by-side, but machine performance and everything else is going to be a factor.
39:47
Doing this on a four gig, I, three off of an old SATA drive is going to be a lot different than doing it on an eight core I seven, with 64 giga memory and an SSD, right?
40:01
Because we’re making a call out to Python installed on the machine.
40:09
I think actually, I answered pretty much all the questions.
40:14
I think he did.
40:15
Yeah, I couldn’t follow all of them, but I would have to figure, M might have a slight advantage being internal to Power BI versus the call out to Python.
40:24
But yeah, I’m sure your mileage may vary, Yeah.
40:27
Yeah, and that’s why I don’t want to necessarily go out on a limb and give it a hard answer there, because, all right, we can’t. Your mileage is going to vary based on your machine.
40:50
So, here it is. Here’s the summary, everything I just said.
40:53
Why use Power BI in Python?
40:57
The biggest one, hands down, as far as I’m concerned, is access to re-using existing code.
41:08
I’m going to bring up one of the questions that came through from Emily. We use T M one Pi to connect to T M one cubes.
41:16
In theory, without knowing a whole lot more about it, assuming that you have a script, you would be able to easily copy and paste that code right into Power BI.
41:30
Now, I personally am not familiar with any other connectors.
41:34
There’s a lot of different libraries, a lot of different drivers out there.
41:38
I’m using pi ODBC, but gosh, there are a lot of different libraries.
41:45
Your best place is to go to the Python site where there’s all sorts of Python documentation python.org.
42:00
And here you can see all sorts of different libraries, everything else that’s out there.
42:07
But that is a perfect example, Emily, so thank you for that question, because I’m able to use it.
42:12
You can re-use that code.
42:16
Same thing goes with more visualizations. You just saw one in map plot lib. That’s not available elsewhere.
42:25
Greater flexibility from tricky sources, again, Emily’s, example of TM one pie is a perfect example of that.
42:34
Not having to write them.
42:37
Hey, I’ve got a new employee who knows Python and knows how to do all sorts of fancy things and Pi saw Python. Great.
42:45
Don’t have to learn, them can do data cleansing that way.
42:51
Pre existing scripts. Everything’s out there.
42:54
There are so many samples out there in the Python libraries in the Python world, somatic, it’s a wonderful community, it’s a wonderful thing.
43:07
So Olga … question about Python visuals. Do you need a Power BI Pro license for the service?
43:15
I’m going to defer that one.
43:17
And Bob, if you want to answer that one, if you happen to now, I do know they are needed for R, but I’m not sure I’m focusing just on desktop right now.
43:28
All right, so unfortunately, I’m going to have to defer that question.
43:32
And Mike, I think that’s it for me.
43:36
Thank you, OK, keep an eye on that question pane, in case some more role in, then we can pick them up at the end.
43:43
Thanks for a great presentation, Patrick. Along those lines, if you want to learn more, we have a great self paced class that you can sign up for Power BI in Python.
43:53
We can leverage the power of Python scripts within the Power BI Desktop environment.
43:57
In the class, you’ll learn how to create and access data for visualizations and transform data, or through Power Query using Python.
44:04
It’s a half day training, available on demand, or can be taught in private groups.
44:10
Along those lines, we offer a complete spectrum of BI training.
44:14
If you want to go to the next slide, Patrick, and the three major platforms we support Microsoft Power BI, Tableau, and IBM Cognos were ideal for organizations that are running multiple platforms, or those moving from one to another Patrick, as an example, is very facile and all three of those platforms.
44:31
And we offer all of the different standard modalities, tailored group sessions, small group mentoring, instructor led online courses, and self paced, e-learning, And we can mix and match those to optimize for your organization.
44:46
Some great additional resources, again, out on senturus.com, we have hundreds of free resources on the website, and we’ve been committed to sharing our BI expertise for over a decade.
44:55
Can also see recordings of Patrick’s last two webinars, Power BI Builder and paginated reports, and Power BI Data Cleansing and Power BI, and Power Query Editor.
45:05
So, we’ve got a bunch of Power BI webinars and blogs out there, as well as Tableau and Cognos and all things, business analytics.
45:12
So, go ahead and check that out and again, bookmark it while you’re there.
45:17
Upcoming events, we’ve got two for you. First of all, what’s new in Cognos.11.1.2 with IBM’s product manager, Rachel Su that’s coming up on the 20th of October at the usual time. You can register over on senturus.com at events. And then, we’re doing a Senturus, Analytics Connector, presentation and demos.
45:39
Easily connect Power BI and Tableau to Cognos data and leverage your single source of truth and govern data.
45:47
Real quickly about Senturus, we concentrate our expertise solely on business intelligence with a depth of knowledge across the entire BI stack.
45:58
And, our clients know us for providing clarity. from the case of complex business requirements, disparate data sources, and constantly moving targets, and changing regulatory environments.
46:07
We’ve made a name for ourselves, because of our strength at Bridging the Gap between IT and Business Users.
46:11
We deliver solutions that give you access to reliable analysis, ready data across the organization, so you can quickly and easily get answers at the point of impact, in the form of the decisions you make, and the actions you take.
46:24
Our consultants are leading experts in the field of analytics with years of pragmatic, real-world expertise, and experience advancing the state-of-the-art.
46:31
We’re so confident in our team, and our methodology that we back our projects with a 100% money back guarantee, that is unique in the industry.
46:40
And we’ve been doing this for quite awhile. We’ve been focused exclusively on business analytics for over 20 years now.
46:46
We’ve worked across the spectrum from Fortune 500 down to the mid-market, and have solve business problems across many industries and functional areas, including the office of finance, sales and marketing, manufacturing, operations, HR, and IT.
46:59
Our team prides itself in being both large enough to meet all of your business analytics needs, yet small enough to provide personalized attention.
47:07
If you would like to join the Senturus as team, we are hiring talented and experienced professionals. You can see the list there.
47:13
You want to look at the job descriptions, head on over to the link in the slide you see here and or send your resume to jobs@Senturus.com.
47:22
With that, we have a couple minutes left here. Actually, we got a lot of time left.
47:26
Did any new questions pop up there in the question panel that you want to answer, Patrick?
47:30
They did not.
47:34
I stunned everybody into silence again. You know. It’s just because I answer everything so well during the presentations, you don’t have any questions afterwards. Exactly, I was so worried about the time that I went quicker and now we ended up with extra time, you just can’t weigh in can ya.
47:51
Nobody ever complains about getting a few minutes back in their day, so if you want to advance to the last slide then I will, I will interjects something real quick.
47:59
I know you didn’t have it on the upcoming events, but just as kind of a little sneak preview, for those of you who are our scripting people, there may be one of these for our coming up soon.
48:16
But, yeah, especially when we talk about extending tools like Power BI or Tableau, or any tool really with, with our, that’s really where the statistical packages come into play. So that’ll be a really interesting webinar.
48:30
So make sure you keep an eye out for that. Oh, and, and I forgot at the beginning of the webinar, that, thanks for sharing my memory there, that, we do record all of these webinars, and we will post the recording along with the deck.
48:41
And a questions log, if that’s appropriate. I think we answered everything today, but thanks for reminding me about that.
48:49
Thank you, Patrick, for a great presentation, as always, and thanks to all of you for taking time out of your busy schedules to join us today.
48:56
Thanks for your time, and please do reach out to us via the info@senturus.com
49:01
e-mail, or if you actually still use a phone, call us. But we’d love to hear about any of your business analytics needs.
49:09
And lacking that we will look forward to seeing you on the next Senturus Knowledge Series event. Thank you.