如何根据条件将一个数据框的值添加到另一个数据框?

时间:2019-05-07 17:56:19

标签: python pandas csv numpy

我正在尝试将价格从一个列表添加到客户想要订购的零件列表中。因此,第一个列表包含零件号,描述和数量,第二个列表包含零件号和价格。我需要将第二个清单中的价格添加到第一个清单中的协调零件号中。我可以使用.isin从第二个列表中收集我需要的价格,但是它更改了它们导入的顺序,因此我必须手动将它们放在第一个列表中。

df1['COST'] = np.where(df1['PARTNUMBER'] == 'PartNumber1', 'COST', 'No cost')

给了我想要的结果,但是当我尝试将其与第二个列表进行比较

df1['COST'] = np.where(df1['PARTNUMBER'] == df2['PARTNUMBER'], 'COST', 'No cost')

它不起作用。我尝试对索引进行排序,删除索引str(df1 ['PARTNUMBER']),也许我做的不正确,但是我查找了所有可以引用的引用,但我无法使其正常运行。

理想情况下,我也会从第二个清单中添加成本,但是当我尝试从价格清单中获得随机值时

df1['COST'] = np.where(df1['PARTNUMBER'] == df2['PARTNUMBER'], df2['COST'], 'No cost')

我得到的主要2个错误是“只能比较标记相同的Series对象”和“必须通过2维输入”,或者它运行时会给我带来所有正面或负面的结果

0 个答案:

没有答案