count occurrences of one variable grouped by another python 1

count occurrences of one variable grouped by another python

>>> data = pd.DataFrame({'user_id' : ['a1', 'a1', 'a1', 'a2','a2','a2','a3','a3','a3'], 'product_id' : ['p1','p1','p2','p1','p1','p1','p2','p2','p3']})
>>> count_series = data.groupby(['user_id', 'product_id']).size()
>>> count_series
user_id  product_id
a1       p1            2
         p2            1
a2       p1            3
a3       p2            2
         p3            1
dtype: int64
>>> new_df = count_series.to_frame(name = 'size').reset_index()
>>> new_df
  user_id product_id  size
0      a1         p1     2
1      a1         p2     1
2      a2         p1     3
3      a3         p2     2
4      a3         p3     1
>>> new_df['size']
0    2
1    1
2    3
3    2
4    1
Name: size, dtype: int64

Here is what the above code is Doing:
1. Create a dataframe with the data you want to group by.
2. Group the dataframe by the columns you want to group by.
3. Use the size() function to get the count of each group.
4. Convert the series to a dataframe.
5. Reset the index of the dataframe.
6. Use the column you want to get the values from.

Similar Posts