Question: I wish to cut out some of the values from a list in each row for every column by certain value.

```
b = pd.DataFrame({"a":[1,1,1,2,2],
                 "b":[6,7,8,9,10]})

b.groupby("a")["b"].apply(list).apply() # I try to group it but I do not know how to finish it after that. Any idea how to continue from this code? 

```

My idea is group all the "a" and then cut out one dataset or one row from each group.

```
    a   b
0   1   6
1   1   7
2   1   8
3   2   9
4   2   10

    a   b
0   1   6
1   1   7
3   2   9

```

Answer: 
Use [`groupby`](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.groupby.html)+[`GroupBy.tail`](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.core.groupby.GroupBy.tail.html) to get the index of the last row of each group, and drop them.

```
b.drop(b.groupby('a').tail(1).index)

```

---

```
   a  b
0  1  6
1  1  7
3  2  9

```
So `duplicated`

```
b[b.iloc[::-1].duplicated('a')]
   a  b
0  1  6
1  1  7
3  2  9

```