Hello and welcome back to my Q&A video series about the pandas library in Python. The question for today comes from a YouTube commenter who asks, "Can you make a video dedicated to pointing out the differences between `loc`, `iloc`, and `ix`?" These are different data frame methods for selecting rows and columns, and they are very flexible and powerful. It's important to understand all three of them, so let's jump right in and use an example data set to explore these methods. First, we'll import pandas as PD. Then, we're going to use a data set of UFO reported sightings. We'll say `UFO = PD.read_csv("bit.ly/UFOreports")`. You can always follow along with this at home. That's a public data set. If you wanted to look at the first few rows, your natural inclination might be to use the `head` method. So, if we want to see the first three rows, we can use `UFO.head(3)`. But there are lots of other ways to do this, and `loc` is one of them. It's a lot more powerful and flexible. So, let's try it out. `loc` is a data frame method for filtering rows and selecting columns by label. For rows, the label is the index, and for columns, it's the column names. So, if I want row zero and all columns, I can use `UFO.loc[0, :]`. The colon means all columns. This will give us a pandas series showing just the first row of the data frame. If I want multiple rows, like rows 1 and 2, I can just pass a list: `UFO.loc[[1, 2], :]`. This will give us rows 1 and 2, and all columns. Instead of using a list, there is a more efficient way to select a continuous block of rows. You can use `UFO.loc[2:, :]`. This will give us rows 2 through the...