Как конвертировать формат времени DayOfyear: Hour: Minute.000 - PullRequest
0 голосов
/ 20 декабря 2018

Я хочу построить данные, где Y - некоторая позиция, а X - время.Время указывается в формате 240:19:35:50.000 (юлианский: час: минута: секунда. Миллисекунды).Когда я пытаюсь построить график, он выдает ошибку ValueError: Error parsing datetime string "240:19:35:50.000" at position 3

Я пытался использовать строковые форматеры, такие как strftime, но безуспешно с:

time = time.strftime('%H:%M:%S.%f')[:-3]

вот фрагмент моего кода:

# I have no need for the julian portion I removed it
time = data['Time'].str.slice(start=4)
time = time.strftime('%H:%M:%S.%f')[:-3]
pitchPlot = plt.subplot(7, 1, 3)
plt.plot((time), data['Pitch Stick Position(IN)'])

Это выводит: AttributeError: у объекта 'Series' нет атрибута 'strftime', что является странным, потому что в документации он существует.

Что бы я хотелнапример, преобразовать это в H: Минуты: Секунды: Миллисекунды как объект даты и времени, чтобы я мог построить его, используя matplotlib.

Обновление: я пытался использовать to_datetime, как предложено с

data['Time'] = pd.to_datetime(data['Time'], format='%H:%M:%S.%f')[:-3].dt.time

, новыход странный.Вот последние 6 исходных входов

index    time
10165    240:19:35:49.000
10166    240:19:35:49.200
10167    240:19:35:49.400
10168    240:19:35:49.600
10169    240:19:35:49.800
10170    240:19:35:50.000

и последние 6 выходов:

index    time converted
10165    19:35:49
10166    19:35:49.200000
10167    19:35:49.400000
10168    NaN
10169    NaN
10170    NaN
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...