Строковые даты в unixtime в pandas фрейме данных - PullRequest
0 голосов
/ 26 февраля 2020

я получил фрейм данных с таким столбцом:

Date
3 mins
2 hours
9-Feb
13-Feb

тип даты - строка для каждой строки. Какой самый простой способ получить эти даты в целочисленное unixtime?

1 Ответ

1 голос
/ 26 февраля 2020

Одна идея - конвертировать столбцы в datetime и timedeltas:

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')

#remove rows if missing values in dates and times
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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...