【发布时间】:2019-03-12 14:03:21
【问题描述】:
假设我有一个名为 vals 的数据框,如下所示:
id........日期..........min_date... .......最大日期
1........2016/01/01........2017/01/01..........2018/07/01 2........2017/02/02........2017/01/01........2017/04/01 3........2016/05/01........2016/01/01........2016/07/01
我想添加一个名为within_range 的列,如果date 介于min_date 和max_date 和False 之间,则显示True。否则。
这是我的代码,但想知道是否有更有效的方法:
vals['within_range'] = False
for i in range(len(vals)):
if vals.loc[i, 'date'] >= vals.loc[i, 'min_date']
and vals.loc[i, 'date'] <= vals.loc[i, 'max_date']:
vals.loc[i, 'within_range'] = True
【问题讨论】:
标签: python pandas performance dataframe series