Pandas groupby считает один столбец по сравнению с другим столбцом

#python #pandas #dataframe #pandas-groupby

#python #pandas #фрейм данных #pandas-groupby

Вопрос:

У меня есть этот фрейм данных с 11 миллионами строк:

Фрейм данных

Я хочу подсчитать, сколько пользователей написали одинаковое количество твитов, используя 'user_id' столбец и график гистограммы (ось y: количество пользователей, ось x: количество твитов).

Я попробовал это:

 user_tweet_df.groupby('tweet_count').count()
 

Это не может сработать. Кто-нибудь может помочь? Спасибо.

Комментарии:

1. Не могли бы вы предоставить типичный результат, который вы ожидаете в виде таблицы и графика.

Ответ №1:

Посмотрите, сработает ли для вас приведенное ниже. Используйте pandas docs по визуализации, чтобы настроить график по мере необходимости.

 import matplotlib.pyplot as plt
import pandas as pd
from tabulate import tabulate

tweets_df = pd.DataFrame({'user_id':[312,412,521,577,614,753,965,989],
                    'user_name':['Mary','Bob','Hans','Nicole','Chris','Matt','Carol','Khan'],
                    'tweet_count':[207,35,35,1,2,1,1,15]})
print(tabulate(tweets_df, headers='keys'), 'n')

grouped_df = tweets_df.groupby('tweet_count').count()[['user_id']]
print(tabulate(grouped_df, headers='keys'), 'n')

grouped_df.plot(kind='bar')
plt.show()
 

введите описание изображения здесь