数据库是rv 列为“NextResetDate\u rv”(日期时间)、“RateResetFreq\u rv”(时间增量) me1是截止日期时间('12/31/2019')
我正试图根据一个条件创建一个新的列“resetcalc1\u rv”,但无法获得正确的代码,请您指出哪里出错了
基本上,“rvresetcalc1_rv”应该等于“NextResetDate_rv”,只要它在2019年12月31日之后,否则需要添加“RateResetFreq_rv”,直到满足条件为止
rv['resetcalc1_rv'] = rv['NextResetDate_rv']
def new1(row):
while row['resetcalc1_rv'] < me1:
row['resetcalc1_rv'] = row['NextResetDate_rv'] + row['RateResetFreq_rv']
if row['resetcalc1_rv'] >= me1:
break
row['resetcalc1_rv']
rv['resetcalc1_rv'] = rv.apply(lambda row:new1(row), axis=1)
现在所有行的输出都是“None”
可以避免while循环。使用减法和整数除法,您可以找到需要向每行添加多少个
'RateResetFreq_rv'
单位才能满足条件。clip(lower=0)
确保我们不会更改已经在指定日期之后的日期。然后您可以一次计算所有值样本数据
代码
输出
相关问题 更多 >
编程相关推荐