合并pd.merge()含有相同的某一列两个不同的dataframe表格

文章目录

  • 前言
  • 举例:Instacart案例
  • 总结

前言

两张表dataframe中含有相同的某一列,这个时候可以通过pandas中的pd.merge()方法将其合并为同一个表。

举例:Instacart案例

现在有4张表,由这些数据预测用户下一步将要购买哪些产品,为了完成这样一个任务需要探究用户对物品类别是否喜欢,需要找到用户和类别的关系,用户user_id,物品类别aisile,这两个字段不在同一个表中,所以需要将user_id和aisile放在同一个表中。
首先把4张表都读取进来:

order_products=pd.read_csv('order_products__prior.csv')
order_products

合并pd.merge()含有相同的某一列两个不同的dataframe表格_第1张图片

products=pd.read_csv('products.csv')
products

合并pd.merge()含有相同的某一列两个不同的dataframe表格_第2张图片

orders=pd.read_csv('orders.csv')
orders

合并pd.merge()含有相同的某一列两个不同的dataframe表格_第3张图片

aisles=pd.read_csv('aisles.csv')
aisles

合并pd.merge()含有相同的某一列两个不同的dataframe表格_第4张图片
观察了4个表的字段之后,要将user_id和aisile放在同一个表中步骤如下:
合并pd.merge()含有相同的某一列两个不同的dataframe表格_第5张图片

#aisles和products这两个表都有aisle_id,可以先把这两个表合并起来
tab1=pd.merge(aisles,products,on=["aisle_id","aisle_id"])
#orders和orders_products都含有order_id这个字段,合并一下
tab2=pd.merge(orders,order_products,on=["order_id","order_id"])
#再把tab1和tab2按照product_id合并起来 就完成了目标:将user_id和aisle放在一个表中
tab3=pd.merge(tab1,tab2,on=["product_id","product_id"])
tab3

在这里插入图片描述

总结

本文举例讲述了怎么合并含有相同列索引的不同的dataframe表格,主要用到的方法是pd.merge()。(如果您发现我写的有错误,欢迎在评论区批评指正)。

你可能感兴趣的:(np,pd,df,mpl,TF,pytorch基本语法操作)