Bivariate Analysis
However not all datasets have such clear identification as the last example. Often there is a lot of overlap with the points, and this leads us on to the next type of analysis.
Bivariate analysis, 'Bi' meaning 'two', involves analyzing two variables of our dataset.
Using petal_length and sepal_length we will try to determine the species. To do this we will use Seaborn’s built in function FacetGrid.

1sns.FacetGrid(df,hue="species",size=5).map(plt.scatter,"petal_length","sepal_width")
2
3plt.xlabel('Petal length', fontweight = 'bold')
4plt.ylabel('Sepal length', fontweight = 'bold')
5
6plt.legend(loc=(0.7,0.8))
7plt.show()

From the plot, it is easy to classify the species Setosa however, the other species are not as easily classified in comparison due to the overlapping of points.
Since there is overlapping we can also conclude that a linear regression model would not be appropriate. Instead other non-linear classification methods would be preferred as to reduce errors like decision trees, random forest etc. Therefore we will move on to the next type of analysis.