首页 > 解决方案 > 熊猫从 groupby 对象创建一个新列表

问题描述

我的数据有一个国家列和“点击广告”列,该列具有客户对广告的偏好的布尔值。我想按我的列表分组以查看基于国家/地区的点击次数。然后我想减少 (4,8) 次点击,它们代表每个国家/地区的最高点击次数。我想剪切这些行并创建一个新列表,同时保留行的所有特征

ad_country=ad_data.groupby('Country')  
Country_sum=[]  
for i in range(4,8):  
    if ad_country['Clicked on Ad']==i:  
        Country_sum.append(iloc[ad_country])

样本

每日 >>>>> 年龄 >>每日互联网使用量 >>> 国家 >>>> 点击广告(布尔)
68.95 >>>>>>35 >>>>>> 256.09 >>>>>>>>>突尼斯>>>>>>>>>>>> 0
75,78>>>>>>28>>>>>>>>214.9>>>>>>>>>>墨西哥>>>>>> >>>>>>1

我的结果应该有一个数据框,其中包含以国家/地区名称作为索引的行,同时总点击广告功能总计和其他功能(尽管对分析并不重要)列中的总计值。

标签: loopsdataframeappendpandas-groupby

解决方案


ad_country=ad_data.groupby('Country')['点击了广告'].sum()

我可以使用 groupby 和 sum() 获得国家/地区列表。我还可以看到最大样本大小 w count()

我仍在寻找是否可以将 groupby 对象切片以获得最大计数,例如 value_counts()。


推荐阅读