字符串在熊猫数据框中的日期是unixtime

问题描述 投票:0回答:1

我的数据框具有这样的列:

Date
3 mins
2 hours
9-Feb
13-Feb

日期类型是每一行的字符串。将日期转换为整数unixtime的最简单方法是什么?

python pandas dataframe unix-timestamp
1个回答
0
投票

一个想法是将列转换为日期时间和时间增量:

df['dates'] = pd.to_datetime(df['Date']+'-2020', format='%d-%b-%Y', errors='coerce')

times = df['Date'].replace({'(\d+)\s+mins': '00:\\1:00',
                             '\s+hours': ':00:00'}, regex=True)
df['times'] = pd.to_timedelta(times, errors='coerce')

df = df[df['Date'].notna() | df['times'].notna()]
df['all'] = df['dates'].dropna().astype(np.int64).append(df['times'].dropna().astype(np.int64))
print (df)
      Date      dates    times                  all
0   3 mins        NaT 00:03:00         180000000000
1  2 hours        NaT 02:00:00        7200000000000
2    9-Feb 2020-02-09      NaT  1581206400000000000
3   13-Feb 2020-02-13      NaT  1581552000000000000
© www.soinside.com 2019 - 2024. All rights reserved.