1

フレーム1とフレーム2の2つのデータフレームがあります

In [10]: frame1[:5]
Out[10]:
    cid
0   531
1  1102
2  1103
3  1406
4  1409

In [14]: frame2[:5]
Out[14]:
     cid   media_cost     imps  booked_revenue
0  72692    29.671446    13918       84.961853
1  72704  3121.781201  6992946     9912.982516
2    531     0.001540        2        0.000000
3  39964  2307.119001  3997167     5425.629736
4  72736    45.716847   143574       56.280000

frame1 には 60,888 行、frame2 には 139,846 行があります。

これら 2 つのデータフレームを使用して、基本的に frame2 で構成される 3 つ目のデータフレームを作成し、frame1 と共有するすべての cid 値を削除します。したがって、この例では、frame1 と共有する行 2、cid 531 のない frame2 である frame3 が必要です。

4

1 に答える 1

3

どうですか:

>>> f1
    cid
0   531
1  1102
2  1103
3  1406
4  1409
>>> f2
     cid   media_cost     imps  booked_revenue
0  72692    29.671446    13918       84.961853
1  72704  3121.781201  6992946     9912.982516
2    531     0.001540        2        0.000000
3  39964  2307.119001  3997167     5425.629736
4  72736    45.716847   143574       56.280000
>>> f2[~f2.cid.isin(f1.cid)]
     cid   media_cost     imps  booked_revenue
0  72692    29.671446    13918       84.961853
1  72704  3121.781201  6992946     9912.982516
3  39964  2307.119001  3997167     5425.629736
4  72736    45.716847   143574       56.280000
于 2013-02-19T22:12:02.300 に答える