我想对数据帧中的列应用一个条件。该列具有格式为HH:MM:SS
的时间值,我想将其与固定时间值(阈值)进行比较,但我得到了错误。将阈值转换为datetime.datetime.strptime
会产生错误。我想问的是——为了比较任意两个时间值,我应该如何存储它们,或者我应该将它们转换成什么,以便进行比较?阈值为字符串格式,列值为datetime.time
格式
当我这样做的时候-
threshold = datetime.datetime.strptime('1:04:00','%H:%M:%S').time()
df_styled = df.style.apply(lambda x:['background:red' if x > threshold else "background:white" for x in df['Total Time']], axis=0)
我得到-
TypeError: '>' not supported between instances of 'datetime.datetime' and 'datetime.time'
当我这样做的时候-
threshold = datetime.datetime.strptime('1:04:00','%H:%M:%S')
df['Total Time'] = df['Total Time'].apply(lambda x: datetime.datetime.strptime(x,'%H:%M:%S'))
df_styled = df.style.apply(lambda x:['background:red' if x > threshold else 'background:white' for x in df['Total Time']], axis=0)
我得到了错误
TypeError: strptime() argument 1 must be str, not datetime.time
您可以比较由^{} 和^{} 创建的时间增量:
编辑:问题数据的解决方案:
相关问题 更多 >
编程相关推荐