Now, let's talk about how we can use the Panda syntax for plotting. So, I'm going to start here with a group by object. So, we're going to group by starting with our Pandas data frame. We're going to group by our different species by our target column and we're going to get the mean for each one of our different features: petal length, petal width, sepal length, and sepal width. We're then going to call dot plot the default, dot plot is just going to be a line graph as we saw earlier. We just set the line style equal to blank to remove those lines. Here we won't do that. We want to have a specific color for each one of our different features, so for sepaling, sepal width, etc., we'll call it red. We'll have the colors red, blue, black, and green for our labels, which we'll see at the bottom of our graph in a second. We're going to set the font size equal to 10 and the figure size. So the size of the figure itself will be four by four, and what does that look like? We see here the output where we have our x values being the different species. Starting with setosa then versus color then virginica and we can see the average value for each one of these, starting with sepal length and then red and then we have sepal within blue according to the colors that we specified earlier. A very useful feature of Seaborn is going to be the pair plot. So, we're going to start plotting in Seaborn now, and Seaborn, we import as we say, import Seaborn as sns. That's going to be the common way of bringing in and importing Seaborn and once we have Seaborn we'll do sns and call the pair plot function. All we have to pass in is the data itself and that would work on its own. What we're also going to do is pass in hue equals species and that will actually break it across by color and then the size will define the size. So, let's look at that plot. We see here that it's going to create a scatter plot between each one of the features and the other feature. So, we see sepal length compared to sepal width in the first row, second column. We're able to see that relationship with that because we set the hue equal to species. We're able to see that relationship broken down by color, according to the different species. Now, obviously, if you look across a diagonal, if we were to create a scatter plot with one value with itself, we just have a straight line. So, let's zoom in just on what that scatter plot actually looks like when we're looking at the pair plot. So, we're able to see a visualization now of the correlations as well as the histograms across all of our different columns, which is what makes this so powerful. Here, focusing in on the scatter plot, we see petal length versus sepal width in that top left corner, we see the relationship, and we are also able to break that down by the different species. We can imagine, in a business case, that we may want to see the example of the effects of different features, such as ad spend on revenue and we can see that relationship, as well as the distribution of ad, spend, and the distribution of revenue for our actual data frame. Another useful feature of Seaborn is working with the hex bin plot. The way that we're going to call that and we'll see what that looks like in just a second, is calling sns. Again, that's referring to Seaborn sns.joint plot. We say what our x values are going to be and what our y values are going to be and this is going to show us similar and we'll see in a second it's going to be similar to a scatter plot but it's actually going to give the density of where the most similar points are being held. So, we see these much darker hexagons where there's going to be a lot denser amount of values there compared to the lighter hexagons, where there's not as many values there. So, it's able to also show where most of these values are actually falling. With that, we can also see the histograms of both the sepal length and sepal width on the top and to the right of our graph. Here, and again, we can think about the relationship between add and revenue and we'd be able to see the distribution of each as well as seeing where each of those values are most likely to overlap. Finally, if we want to really break it apart and see it across different categories, so similar to how we do a somewhat of a group by, we can use our facet grid. We pass in our data. We're going to pass in our column, that's what the col argument is going to be, that we want the column to be different species for each column. There's also the option of row. We're just going to stick with column here, and we're going to have margin titles equals true, meaning we're going to have titles for each. So, that's just setting the facet grid object in order to actually plot something. We call that objects. It has a dot map method available to it and we're going to map in a histogram of the sepal width for each one of these species and then we set another plot using the sns.faster grid. We do the same map except this time for sepal length and we see this output where we can see the histogram broken down each column equal to one of the different species.We can zoom in here and see the histogram for the species equals setosa for both the sepal width and the sepal length. So, let's do a quick recap of what we just learned in this section. We discussed different approaches to EDA and how to have that initial conversation with your data set. We discussed different techniques available, such as summary statistics using the mean median min max correlation as well as different visualization techniques. We touch on how to look into a sample of your data and what it means to actually look at a sample, and some of the things to take into account. We discuss producing a wide range of visualizations and how to get a better feel for your data. From here, we're going to go in and take an actual lab and see how it's done in a Jupyter notebook. Look forward to seeing you there.