为了账号安全,请及时绑定邮箱和手机立即绑定

我想将 DataFrame 与 CSV 合并

我想将 DataFrame 与 CSV 合并

慕的地8271018 2021-06-06 17:05:16
我需要将 1 df 与 1 csv 合并。df1 仅包含 1 列(我要更新的产品的 id 列表) df2 包含 2 列(所有产品的 id,数量)df1=pd.read_csv(id_file, header=0, index_col=False)df2 = pd.DataFrame(data=result_q)df3=pd.merge(df1, df2)我想要的是:一个仅包含来自 csv/df1 的 id 的数据框与相同 id 的 df2 的数量合并
查看完整描述

3 回答

?
达令说

TA贡献1821条经验 获得超6个赞

如果你只想要你在第一个 data_frame 中的产品,你可以使用这个:


df_1

Out[11]: 

   id

0   1

1   2

2   4

3   5


df_2

Out[12]: 

   id prod

0   1    a

1   2    b

2   3    c

3   4    d

4   5    e

5   6    f

6   7    g

7   8    h


df_3 = df_1.merge(df_2,on='id')

df_3

Out[14]: 

   id prod

0   1    a

1   2    b

2   4    d

3   5    e

您需要使用参数 on='column' 以便仅生成具有相同 ID 的对应行的新 df。


查看完整回答
反对 回复 2021-06-09
?
慕码人2483693

TA贡献1860条经验 获得超9个赞

我找到了解决方案。我需要为我的 df2 重置索引


df1=pd.read_csv(id_file)

df2 = pd.DataFrame(data=result_q).reset_index()


df1['id'] = pd.to_numeric(df1['id'], errors = 'coerce')

df2['id'] = pd.to_numeric(df2['id'], errors = 'coerce')




df3=df1.merge(df2, on='id')


查看完整回答
反对 回复 2021-06-09
?
慕森卡

TA贡献1806条经验 获得超8个赞

您可以使用 new_df= pd.merge(df1,df2, on=['Product_id'])


查看完整回答
反对 回复 2021-06-09
  • 3 回答
  • 0 关注
  • 218 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号