Reputation: 2720
I have a dataframe query2
:
Site TripDate Volume
0 003l 1990-06-10 2202.571850
1 003l 1991-07-26 2543.566201
2 003l 1991-11-01 1702.228651
3 003l 1992-10-15 2753.163510
4 003l 1993-04-01 2550.538237
5 003l 1993-10-08 2241.329021
And another table1
:
TripDate Count
0 1990-06-10 35
1 1991-07-26 35
2 1992-10-15 34
3 1993-10-08 35
I need to filter query2
to only include TripDates
in table1
. The resulting filtered table would look like:
Site TripDate Volume
0 003l 1990-06-10 2202.571850
1 003l 1991-07-26 2543.566201
2 003l 1992-10-15 2753.163510
3 003l 1993-10-08 2241.329021
Upvotes: 3
Views: 935
Reputation: 375375
You're looking for merge:
In [11]: t1.merge(q2)
Out[11]:
TripDate Count Site Volume
0 1990-06-10 35 003l 2202.571850
1 1991-07-26 35 003l 2543.566201
2 1992-10-15 34 003l 2753.163510
3 1993-10-08 35 003l 2241.329021
By default this merges on shared columns (in this case only TripDate, but you can specify):
In [12]: t1.merge(q2, on="TripDate")
Out[12]:
TripDate Count Site Volume
0 1990-06-10 35 003l 2202.571850
1 1991-07-26 35 003l 2543.566201
2 1992-10-15 34 003l 2753.163510
3 1993-10-08 35 003l 2241.329021
Upvotes: 6