迭代Dataframe以根据另一个Dataframe获取值

时间:2017-09-11 23:59:36

标签: python pandas dataframe

让我说我有以下DataFrames:

DATAFRAME 1

    CFOP    Vendas
0   5101    Venda
1   6101    Venda
2   6107    Venda
3   6118    Venda
4   6109    Venda

DATAFRAME 2

    Name    CFOP    Vendas
0   John    5101    10,00
1   Lea     7008    20,00
2   Anthony 6107    15,00
3   Frank   7000    17,00
4   TOM     6109    21,00

我想仅在Dataframe 1的第1行从Dataframe 2算出第2行时才制作第三个Dataframe。

所以,最终的答案应该是:

    Name    CFOP    Vendas
0   John    5101    10,00
2   Anthony 6107    15,00
4   TOM     6109    21,00

我被困了,我只能得到这个代码,我知道这是错的:

vendas_somente = []

for row in df_entrada:
    if df_entrada['cfo'] in df_venda['CFOP']:
        vendas_somente.append(row)

vendas_somente(10)

韩国社交协会

2 个答案:

答案 0 :(得分:1)

或者您可以使用 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style> #text { text-align: left; word-wrap: break-word; width: 100%; max-width: 470px; } @media all and (max-width: 1300px) { #text { text-align: center; } } </style> </head> <body> <div id="text"> just some random textjust some random textjust some random textjust some random textjust some random textjust some random textjust some random textjust some random text just some random textjust some random textjust some random textjust some random textjust some random textjust some random textjust some random textjust some random text just some random textjust some random textjust some random textjust some random textjust some random textjust some random text just some random textjust some random textjust some random textjust some random textjust some random textjust some random textjust some random textjust some random text just some random textjust some random textjust some random textjust some random textjust some random textjust some random textjust some random textjust some random text just some random textjust some random textjust some random textjust some random textjust some random textjust some random text </div> </body>

isin

答案 1 :(得分:0)

您可以使用内部合并

创建它
In[38]: d1[['CFOP']].merge(d2,how='inner',on='CFOP')
Out[38]: 

   CFOP     Name Vendas
0  5101     John  10,00
1  6107  Anthony  15,00
2  6109      TOM  21,00