#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()