【发布时间】:2019-07-22 23:51:27
【问题描述】:
我有关于不同年龄人群使用各种社交媒体平台的调查数据集。我想计算使用社交媒体应用程序的平均人数。以下是示例数据的样子:
这里是可重现的 pandas 数据框:
df=pd.DataFrame({'age': np.random.randint(10,100,size=10),
'web1a': np.random.choice([1, 2], size=(10,)),
'web1b': np.random.choice([1, 2], size=(10,), p=[1./3, 2./3]),
'web1c': np.random.choice([1, 2], size=(10,)),
'web1d': np.random.choice([1, 2], size=(10,))})
这是我尝试过的:
df.pivot_table(df, values='web1a', index='age', aggfunc='mean')
但它效率不高,也没有产生我想要的输出。有什么想法可以完成吗?谢谢
更新:
对我来说,这样做的方法是,首先在每一列中选择分类值并获取它的平均值,这对其他人来说可能是相同的。如果我这样做,我怎样才能很好地绘制它们?
请注意,web1a、web1b、web1c、web1d、1 表示用户,2 表示非用户。我想计算用户和非用户的平均年龄。我怎样才能做到这一点?有人给我一个可能的想法来实现这一点吗?谢谢!
【问题讨论】: