【发布时间】:2019-03-23 02:32:14
【问题描述】:
我有一个数据框df,包括一个标识符列和 4 列日期。请参阅下面的数据框头部。
Identifier A \
0 12253 1989-11-09 00:00:00
1 11413 1990-09-03 00:00:00
2 12337 1977-09-07 00:00:00
3 10610 1994-08-24 00:00:00
4 7493 1993-08-22 00:00:00
B C \
0 2012-03-01 00:00:00 2015-04-01 00:00:00
1 2009-08-16 00:00:00 2015-05-18 00:00:00
2 1977-09-07 00:00:00 1977-09-07 00:00:00
3 2009-01-09 00:00:00 2015-03-01 00:00:00
4 2002-06-03 00:00:00 2015-02-16 00:00:00
D \
0 2012-01-03 00:00:00
1 2015-05-18 00:00:00
2 1977-09-07 00:00:00
3 2015-03-01 00:00:00
4 2015-02-16 00:00:00
我正在尝试将日期列相互比较,如果 A>=B>=C>=D 则在新列中检查 True 应返回,否则返回 False。
因此生成的数据框如下所示:
Identifier A \
0 12253 1989-11-09 00:00:00
1 11413 1990-09-03 00:00:00
2 12337 1977-09-07 00:00:00
3 10610 1994-08-24 00:00:00
4 7493 1993-08-22 00:00:00
B C \
0 2012-03-01 00:00:00 2015-04-01 00:00:00
1 2009-08-16 00:00:00 2015-05-18 00:00:00
2 1977-09-07 00:00:00 1977-09-07 00:00:00
3 2009-01-09 00:00:00 2015-03-01 00:00:00
4 2002-06-03 00:00:00 2015-02-16 00:00:00
D Check\
0 2012-01-03 00:00:00 False
1 2015-05-18 00:00:00 True
2 1977-09-07 00:00:00 True
3 2015-03-01 00:00:00 True
4 2015-02-16 00:00:00 True
我试过了
df['Check'] = np.where(df['A'] >= df['B']>= df['C']>= df['D'], 'True', 'False')
但无法使其正常工作。接下来我可以尝试什么?
【问题讨论】:
-
试试
df['Check'] = df['A'] >= df['B'] >= df['C']