我有一个pandas数据框,里面有一个1秒的数据,格式为“10/23/2017 6:00”。每个时间在文件中出现60次,我想知道是否有一种简单/高效/智能的方法可以在每行中添加秒数,这样我就可以得到“10/23/2017 6:00:00,10/23/2017 6:00:01...”。
oug3syen1#
首先转换列to_datetime,然后添加由cumcount和to_timedelta创建的second:
to_datetime
cumcount
to_timedelta
second
df['time'] = pd.to_datetime(df['time']) df['time'] += pd.to_timedelta(df.groupby('time').cumcount(), unit='s')
样品:
df = pd.DataFrame({'time':['10/23/2017 6:00'] * 60}) df['time'] = pd.to_datetime(df['time']) df['time'] += pd.to_timedelta(df.groupby('time').cumcount(), unit='s') print (df.head(10)) time 0 2017-10-23 06:00:00 1 2017-10-23 06:00:01 2 2017-10-23 06:00:02 3 2017-10-23 06:00:03 4 2017-10-23 06:00:04 5 2017-10-23 06:00:05 6 2017-10-23 06:00:06 7 2017-10-23 06:00:07 8 2017-10-23 06:00:08 9 2017-10-23 06:00:09
1条答案
按热度按时间oug3syen1#
首先转换列
to_datetime
,然后添加由cumcount
和to_timedelta
创建的second
:样品: