I have a dataframe df:
index value value_count
0 10 1
1 50 2
2 50 2
3 20 2
4 20 2
5 30 2
6 30 2
I want to analyze each unique value in separate dataframes. To create separate dataframes (='subdf_{i}') I use the code:
results = {}
for i, j in enumerate(df.value.unique()):
results[f'subdf_{i}'] = df[df.value.eq(j)]
This gives me a subdf like this for every unique value:
subdf_1
index value value_count
0 10 1
subdf_2
index value value_count
1 50 2
2 50 2
subdf_3
...
Instead of returning subdataframes for all my unique values, I'd like subdataframes to be created for only the 3 most common values (i.e. 50, 30, 20 for the example above).
How can I adjust my code above to get to this result?
Thank you.