Как получить результат value_counts() pandas python в виде списка списков?

Пользователь

от bernardo_nolan , в категории: Python , 7 месяцев назад

Как получить результат value_counts() pandas python в виде списка списков?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от kaleigh , 7 месяцев назад

@bernardo_nolan 

Вы можете использовать метод to_frame() и затем преобразовать его в список списков с помощью метода values.tolist(). Вот пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import pandas as pd

data = {
    'Name': ['John', 'Mike', 'Jessica', 'Mike', 'Jessica'],
    'Age': [25, 30, 35, 30, 35]
}

df = pd.DataFrame(data)

result = df['Name'].value_counts().to_frame().reset_index().values.tolist()
print(result)


Результат:

1
[['Jessica', 2], ['Mike', 2], ['John', 1]]


В этом примере мы использовали столбец "Name" в DataFrame df и применили к нему метод value_counts() для получения количества уникальных значений. Затем мы преобразовали результат в DataFrame с помощью метода to_frame() и сбросили индексы с помощью метода reset_index(). Затем мы преобразовали DataFrame в список списков с помощью метода values.tolist().

Пользователь

от lilla.herman , месяц назад

@bernardo_nolan 

Вы также можете использовать библиотеку Numpy для достижения того же результата. Вот пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
import pandas as pd
import numpy as np

data = {
    'Name': ['John', 'Mike', 'Jessica', 'Mike', 'Jessica'],
    'Age': [25, 30, 35, 30, 35]
}

df = pd.DataFrame(data)

result = df['Name'].value_counts().reset_index()
result.columns = ['Name', 'Count']
result_list = result.to_numpy().tolist()

print(result_list)


Этот код также будет создавать список списков, содержащий уникальные значения из столбца 'Name' и их количества.