Мне пришлось сделать что-то вроде
>>> import numpy as np
>>> from datetime import datetime
>>> wind = np.loadtxt("ws425.log.test", delimiter=",", usecols=(0,4), dtype=object,
... converters={0: lambda x: datetime.strptime(x, "%Y-%m-%d %H:%M:%S.%f"),
... 4: np.float})
>>>
>>> wind
array([[datetime.datetime(2013, 12, 11, 23, 0, 27, 3293), 5.8],
[datetime.datetime(2013, 12, 11, 23, 0, 28, 295), 5.5],
[datetime.datetime(2013, 12, 11, 23, 0, 29, 295), 4.0],
[datetime.datetime(2013, 12, 11, 23, 0, 30, 3310), 4.9]], dtype=object)
. Однако для данных временных рядов я переключился на использование pandas
, поскольку он делает многое многое другое:
>>> import pandas as pd
>>> df = pd.read_csv("ws425.log.test", parse_dates=[0], header=None, usecols=[0, 4])
>>> df
0 4
0 2013-12-11 23:00:27.003293 5.8
1 2013-12-11 23:00:28.000295 5.5
2 2013-12-11 23:00:29.000295 4.0
3 2013-12-11 23:00:30.003310 4.9
[4 rows x 2 columns]
>>> df[0][0]
Timestamp('2013-12-11 23:00:27.003293', tz=None)