一般来说,我很少接触Pandas或数据分析,所以这可能是一个简单的解决方案。
我有一个2列的数据集,如下所示:
我想将ROI列分组为一定数量的箱(例如5个),然后计算每个箱中有多少个HITS(1或0)。
raw_df = pd.read_csv('myfile.csv')
roi_ds = raw_df['ROI']
binned_rois = pd.cut(roi_ds , bins=5)
如何将每个垃圾箱链接到“ HIT”列中的多少HIT?
预期的示例输出:
答案 0 :(得分:0)
如果需要为0
和1
值添加2个新列,请使用crosstab
:
raw_df = pd.read_csv('myfile.csv')
df1 = pd.crosstab(pd.cut(raw_df['ROI'], bins=5), raw_df['ROI'])
或者如果需要3列:
df2 = df.groupby([pd.cut(raw_df['ROI'], bins=5), 'HIT']).size().reset_index(name='count')