如何解决将按分组的DataFrame的列值展开为正确的列
进行GroupBy操作后,我具有以下数据框:
根据需要,将user_id与它们各自的过道ID分组。现在,我想将aisle_id值转换为列,以user_id作为索引,并将所有aisle_id作为列。然后,在这些值中,我要具有user_id和aisle_id在先前的DataSet中匹配的次数。例如,如果user_id 1在3种情况下从过道ID 12购买,则DF [1,12]中的值为3。
使用Pandas数据透视表,我可以将user_id的模板作为索引,并将aisle_id的模板作为列,但是我似乎找不到找到创建上面指定值的方法。
解决方法
考虑到您的第一个数据帧是df,我想您可以尝试以下方法:
df2=pd.DataFrame(index=df['user_id'].unique(),columns=df['aisle_id'].unique())
for i in df2.index :
for j in df2.columns :
df2.at[i,j]=len(df.loc[(df['user_id']==i) & (df['aisle_id']==j)])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。