我知道它在python中是基本的,但我找不到合适的方法来做以下事情......
我有2个由日期组成的数据框。 第一个包含300个日期,第二个包含20个日期。
我想创建一个由300个日期组成的新数据框,而不包含第二个数据框中的20个日期。
[in] Dates1
[out]
1 2017-03-10
2 2017-03-09
3 2017-03-08
4 2017-03-07
5 2017-03-06
6 2017-03-03
7 2017-03-02
8 2017-03-01
9 2017-02-28
10 2017-02-27
etc...
[in] Dates2
[out]
1 2017-03-03
2 2017-03-01
expectedResult
[out]
1 2017-03-10
2 2017-03-09
3 2017-03-08
4 2017-03-07
5 2017-03-06
6 2017-03-02
7 2017-02-28
8 2017-02-27
非常感谢!
答案 0 :(得分:0)
你可以先合并然后重做
result = df1.append(df2) data = result.drop_duplicates()
答案 1 :(得分:0)
使用~isin
Dates1.loc[~Dates1.iloc[:, 0].isin(Dates2.iloc[:, 0])]
1
0
1 2017-03-10
2 2017-03-09
3 2017-03-08
4 2017-03-07
5 2017-03-06
7 2017-03-02
9 2017-02-28
10 2017-02-27