我有一个问题,我认为更多的是逻辑而不是编码。我的目标是计算卡车装载和充电的公里数。
我有两个数据框
让我们称之为第一个旅程:
Date Licence City State KM
01/05/2019 AAA-1111 Sao Paulo SP 10
02/05/2019 AAA-1111 Santos SP 10
03/05/2019 AAA-1111 Rio de Janeiro RJ 20
04/05/2019 AAA-1111 Sao Paulo SP 15
01/05/2019 AAA-2222 Curitiba PR 20
02/05/2019 AAA-2222 Sao Paulo SP 25
让我们叫第二张发票
Code Date License Origin State Destiny UF Value
A1 01/05/2019 AAA-1111 Sao Paulo SP Rio de Janeiro RJ 10.000,00
A2 01/05/2019 AAA-2222 Curitiba PR Sao Paulo SP 15.000,00
我需要得到的是:
Date Licence City State KM Code
01/05/2019 AAA-1111 Sao Paulo SP 10 A1
02/05/2019 AAA-1111 Santos SP 10 A1
03/05/2019 AAA-1111 Rio de Janeiro RJ 20 A1
04/05/2019 AAA-1111 Sao Paulo SP 15 Nan
01/05/2019 AAA-2222 Curitiba PR 20 A2
02/05/2019 AAA-2222 Sao Paulo SP 25 A2
正如我所说,更多是逻辑问题。卡车是在圣保罗的始发地取货的。如果我没有货物的交付日期,我如何知道行进的货物经过桑托斯然后再去里约热内卢,对行进行遍历?
ks
最佳答案
因此,这就是我从逻辑上解决问题的方法:
我们是否假设第一个DataFrame将始终按顺序排序?
如果是这样,您可以将第二个DataFrame中的Origin和Destination放入[Sao Paulo,Rio de Janiero]之类的列表中,然后可以遍历第一个DataFrame以查找圣保罗的第一个实例和Rio的第一个实例de Janeiro。
因此,在这种情况下,对第一个DataFrame进行迭代应为您提供圣保罗的位置0和里约热内卢的2位置,然后您将知道位置0和2之间的所有位置均由卡车经过,在这种情况下为Santos 。
关于python - 使用另一个数据框的信息遍历一个数据框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56012592/