如何将第一行的结束时间作为第二行的开始时间(我打算在几秒内向每行的开始时间添加一些值,并且同一行的结束时间必须是下一行的开始时间行)。
例如,
start-time|time_to_add|endtime
10:00:00 |30 secs |10:00:30
10:00:30 | 15 secs | 10:00:45
10:00:45 | 10 secs | 10:00:55
任何帮助将不胜感激。
谢谢
编辑
starttime | val_to_add | endtime
10:30:00 | 30 | 10:30:00 + 0:0:30
10:30:00 + 0:0:30 | 30 | 10:30:00 + 0:0:30 + 0:0:30
答案 0 :(得分:1)
使用:
"names<-"(c(1,2,3), namevec)
name1 name2 name3
1 2 3
setNames(c(1,2,3), namevec)
name1 name2 name3
1 2 3
structure(c(1,2,3), .Names = namevec)
name1 name2 name3
1 2 3
答案 1 :(得分:0)
如果time_to_add
是值列表,这是一个小例子。
import pandas as pd
import numpy as np
df = pd.DataFrame()
initial_start_time = pd.to_timedelta('10:00:00')
time_to_add = ['0:00:30', '0:00:15', '0:00:15', '0:00:30', '0:00:20']
time_to_add = [pd.to_timedelta(x) for x in time_to_add]
df['time_to_add'] = time_to_add
df['end_time'] = [initial_start_time + x for x in np.cumsum(time_to_add)]
df['start_time'] = [initial_start_time] + list(df['end_time'][:-1])
df = df[['start_time', 'time_to_add', 'end_time']]
列time_to_add
仅是您的时间间隔。 end_time
列将间隔时间添加到初始开始时间,而列start_time
则使用结束时间并将其移动一行。
最后一行仅用于重新排列列。
希望这对您有用。