我有两张table。我需要用第一个表中的值替换第二个表中的值,前提是col 1和col 2中的数据相等,并且col 3表2中的值比col 3表1中的值小1。
表1:
| 色谱柱1|第2栏|第3栏|结果|
| --------------|--------------|--------------|--------------|
| 1|四|3|一一一|
| 5|七|六|二百二十二|
表2:
| 色谱柱1|第2栏|第3栏|结果|
| --------------|--------------|--------------|--------------|
| 1|四|四|三百三十三|
| 5|七|四十|四四四|
结果表2:
| 色谱柱1|第2栏|第3栏|结果|
| --------------|--------------|--------------|--------------|
| 1|四|四|一一一|
| 5|七|四十|四四四|
我试着关联相等性(table1.Column1 == table2.Column1 and table1.Column2 == table2.Column2 and table1.Column3 == table2.Column2 - 1)我试着使用iloc,但它在大量数据上工作了很长时间。怎样才能做到最好?提前感谢!
2条答案
按热度按时间pcrecxhr1#
可以使用
merge_asof
:输出:
j8ag8udp2#
您可以在第三列减去1后使用
pd.merge
: