Преобразование индекса из временной строки в миллисекунды - временной ряд Pandas - PullRequest
0 голосов
/ 09 ноября 2018

У меня есть серия времени панды ts, которую можно воссоздать следующим образом

random.seed(111)
rng = pd.date_range(start='2010-01-11', periods=10, freq='W')
ts = pd.Series(np.random.uniform(-10, 10, size=len(rng)), rng).cumsum()

Я получаю результат примерно так:

Index                Value
'2018-10-30 00:00:00' 5
'2018-11-30 00:00:00' 9
'2018-12-30 00:00:00' 7
...

Как мне преобразовать индексы ts в миллисекунды, как это?

Index                Value
1540843200000         5
1543521600000         9
1546113600000         7
...

1 Ответ

0 голосов
/ 09 ноября 2018

Преобразование даты и времени в собственный формат - ns путем преобразования в np.int64, а затем деление на 10**6, последнее присвоение назад:

print (ts)
2010-01-17     9.536558
2010-01-24     7.171763
2010-01-31     7.687922
2010-02-07     5.193187
2010-02-14    -2.815826
2010-02-21    -4.252529
2010-02-28    -7.060655
2010-03-07    -8.430221
2010-03-14    -8.711684
2010-03-21   -15.011056
Freq: W-SUN, dtype: float64

ts.index = ts.index.astype(np.int64) // 10**6
print (ts)
1263686400000     7.747194
1264291200000    14.755361
1264896000000     8.644319
1265500800000    18.253922
1266105600000    13.046097
1266710400000     9.091535
1267315200000    14.309464
1267920000000    15.630323
1268524800000     7.286377
1269129600000     1.859216
dtype: float64
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...