Установку обеспечил мастер Дженкинс с докером

time.strptime() ожидает строку, такую ​​как '2013-12-11 23:00:30.003310', но вы даете ей строковое представление массива:

['2013-12-12 00:00:02.251311', '2013-12-12 00:00:03.255296', ...]

Минимальное исправление заключается в анализе одного элемента за раз:

ts = [time.strptime(s, '%Y-%m-%d %H:%M:%S.%f') for s in wind[:,0]]

Или вы можете использовать параметр converters для loadtxt:

from datetime import datetime
import numpy as np

def str2timestamp(timestr, epoch=datetime.fromtimestamp(0)):
    """Convert local time string into seconds since epoch (float)."""
    # np.datetime64 API is experimental so use datetime instead
    #NOTE: local time may be ambiguous, non-monotonous
    dt = datetime.strptime(timestr, '%Y-%m-%d %H:%M:%S.%f')
    return (dt - epoch).total_seconds()

wind = np.loadtxt('input.csv', usecols=(0, 4), delimiter=',',
                  converters={0: str2timestamp})
print(wind)

Выход

[[  1.38679203e+09   5.80000000e+00]
 [  1.38679203e+09   5.50000000e+00]
 [  1.38679203e+09   4.00000000e+00]
 [  1.38679203e+09   4.90000000e+00]]
15
задан otognan 20 April 2015 в 17:55
поделиться