Dataframe 我有不同的机器运行不同的时间,可能跨越一天,我想区分它在不同的日子
示例机器A从开始日期和时间8月12日晚上9点到8月13日上午5点运行8小时 我无法得到8月12日起3小时和8月13日起5小时的正确时间 怀疑是因为我现在用的是datetime 如何更改日期将与python中的开始日期/结束日期相同
这是我的密码:
endoftoday = datetime.now()
endoftoday = endoftoday.replace(hour=23,minute=59,second=59)
dt['Start_Date']=dt['Start_Time'].dt.strftime('%d/%m/%Y')
dt['End_Date']=dt['Finish_Time'].dt.strftime('%d/%m/%Y')
if (dt.['Start_Date'].str == dt['End_Date'].str):
dt['Tested_Time_Today']= endoftoday-dt['Start_Time']
dt['Tested_Time_NextDay']= dt['Finish_Time'] - endoftoday
以下是我的尝试:
这可能不是你想要的,因为我也不太理解你的问题。但是你得到的是一个新的列,每一行都包含一个字典,日期作为键,当天的小时数作为值
如果你让我们知道你到底想要什么,我也许可以改进答案
编辑:如果您的时间段超过两天,这将不起作用。如果有必要,时间计算将不得不稍微延长。如果您的列比我们计算的列多,请将倒数第二行更改为
df['hours'] = df[['Start_Time', 'Finish_Time', 'Start_Date', 'End_Date']].apply(get_times, axis=1)
相关问题 更多 >
编程相关推荐