如何用来自另一个df的数据填充df - Python

数据挖掘 Python 熊猫 数据框
2022-03-08 13:38:33

我正在尝试用不同的值填充 df 。

第一个df是:

图片说明在这里

第二个df是:

图片说明在这里

我想将该列添加到第一个 df 具有来自第二个的值以接收输出:

数字 反式 日期 价值
HF01 麦粒肿 1
HF01 卢特 2
- - - -
HF05 帕兹 50

我想出了代码:

found = []

for index, row in one.iterrows():
    for ind, rw in two.iterrows():
        if ind not in found:
            if (one.loc[index, 'number'] == two.loc[ind, 'number']) & \
               (one.loc[index, 'trans'] == two.loc[ind, 'trans']) & \
                    one.loc[index,'value'] =  two.loc[ind, one.loc[index, 'date']]
                    found.append(int(ind))
                    break

它可以工作,但速度非常慢。应该如何正确完成?

1个回答

第一个答案很接近,您唯一需要做的就是使用两个字段合并两个数据框。您根本不需要两个数据帧具有相同的长度

尝试:

pd.merge(df1, df2, on = ["number","trans"], how = "left")