2017-05-26 8 views
1

は、2つのデータフレーム、たとえばdf1とdf2を持っています。私は上記の例ではデータフレームの1行を別の行にコピーする

df2.loc[k]['income'] >1000? 

が、私は同様に

df3[Age]: 20, 30 

だろうようにDF1からの行で構成され、新たなデータフレームDF3を作成するにはどうすればよい

df1[Age]: 10, 20 30 

df2[Income]: 100, 1000, 1500 

df4[Age, Income]: (20, 1000), (30, 1500)

ありがとうございます。

答えて

0
In [232]: df3 = df1.join(df2).query("Income >= 1000") 

In [233]: df3 
Out[233]: 
    Age Income 
1 20 1000 
2 30 1500 

UPDATE:

In [269]: idx = df2.index[df2.Income.ge(1000)] 

In [270]: df3 = df1.loc[idx].join(df2.loc[idx]) 

In [271]: df3 
Out[271]: 
    Age Income 
1 20 1000 
2 30 1500 

または単に:

In [275]: df2.loc[df2.Income.ge(1000)].join(df1) 
Out[275]: 
    Income Age 
1 1000 20 
2 1500 30 
+0

はありがとうございます。 df2が大きく、無関係なデータがたくさんあると、join(df2)ステップに時間がかかり、最後に無関係なデータのほとんどが破棄されます。これについての考えは? –

+0

@PythonEdu、更新された回答を確認してください – MaxU

関連する問題