Say we have used pandas dataframe[column].value_counts() which outputs:
apple 5
sausage 2
banana 2
cheese 1
How do yo
If anyone missed it out in the comments, try this:
dataframe[column].value_counts().to_frame()
First you have to sort the dataframe by the count column max to min if it's not sorted that way already. In your post, it is in the right order already but I will sort it anyways:
dataframe.sort_index(by='count', ascending=[False])
col count
0 apple 5
1 sausage 2
2 banana 2
3 cheese 1
Then you can output the col column to a list:
dataframe['col'].tolist()
['apple', 'sausage', 'banana', 'cheese']
#!/usr/bin/env python
import pandas as pd
# Make example dataframe
df = pd.DataFrame([(1, 'Germany'),
(2, 'France'),
(3, 'Indonesia'),
(4, 'France'),
(5, 'France'),
(6, 'Germany'),
(7, 'UK'),
],
columns=['groupid', 'country'],
index=['a', 'b', 'c', 'd', 'e', 'f', 'g'])
# What you're looking for
values = df['country'].value_counts().keys().tolist()
counts = df['country'].value_counts().tolist()
Now, print(df['country'].value_counts()) gives:
France 3
Germany 2
UK 1
Indonesia 1
and print(values) gives:
['France', 'Germany', 'UK', 'Indonesia']
and print(counts) gives:
[3, 2, 1, 1]
Code
train["label_Name"].value_counts().to_frame()
where : label_Name Mean column_name
result (my case) :-
0 29720
1 2242
Name: label, dtype: int64
Try this:
dataframe[column].value_counts().index.tolist()
['apple', 'sausage', 'banana', 'cheese']
The best way to extract the values is to just do the following
json.loads(dataframe[column].value_counts().to_json())
This returns a dictionary which you can use like any other dict. Using values or keys.
{"apple": 5, "sausage": 2, "banana": 2, "cheese": 1}