计算系列对象内数据框的平均值

数据挖掘 熊猫 蟒蛇
2022-02-23 12:38:02

我有一个具有以下结构的数据框:

df.columns

Index(['first_post_date', 'followers_count', 'friends_count', 'last_post_date','min_retweet', 'retweet_count', 'screen_name', 'tweet_count',  'tweet_with_max_retweet', 'tweets', 'uid'],
      dtype='object')

推文系列中,每个单元格都是另一个数据框,其中包含用户的所有推文。

df.tweets[0].columns

Index(['created_at', 'id', 'retweet_count', 'text'], dtype='object')

我想对每个用户的推文进行计算,例如,找到每个用户的平均转发次数、转发次数最多的推文等。

我该怎么做这些?

编辑 示例数据的链接

1个回答

在没有MultiIndex(正确的方式)的情况下,该方法可以做你想做的事;例如TMapply

df.assign(
    max_retweet=df.tweets.apply(lambda x: x.retweet_count.argmax('retweet_count')),
    avg_retweet=df.tweets.apply(lambda x: x.retweet_count.mean())
)


       avg_retweet  max_retweet  
26662     0.045476          187  
32316     0.821538          427  
25879     0.633681          583  
43411     0.112465          421  
28840     0.472222            8

另外,不要与 pickle 共享数据;这很危险