flight_time
11:42:00
19:37:06
18:11:17
У меня возникли проблемы с работой с переменной времени в наборе данных. Я не могу понять, как заставить R обрабатывать это значение как числовое.Сокращение времени, прошедшего переменную, в управляемые вещи
Извините, если это было задано ранее.
EDIT:
Хорошо хорошо дали материал размещен ниже, я понял, что есть несколько вещей, которые я не знал/чек раньше.
Прежде всего это факторная переменная. Я прочитал документацию пакета lubridate, и поскольку я хочу выполнять арифметические операции (если это правильная терминология), я считаю, что функция продолжительности является правильной.
Однако, глядя на примеры - я не совсем уверен, что такое синтаксис для применения этого ко всему столбцу в больших (ish) данных. Поскольку у меня есть 4,5 тыс. Наблюдений, я точно не знаю, как это сделать. Мне не нужно чрезмерное количество детализации - в идеале даже часы и минуты в порядке.
Так что я думаю, что я хочу, чтобы мой код выглядит следующим образом:
преобразование из факторного в строку символов> преобразование из строки символов, к продолжительности/as.numeric.
Это просто возвращает секунду из 'res' как числовые. Я предполагаю, что @Anaryl хочет, чтобы вся строка была преобразована в числовую. Глядя на 'str (res)', сумма 'res @ hour',' res @ minute' и 'res @ .Data' (секунд), правильно преобразованная в постоянную шкалу, будет делать то, что он хочет. Я не слишком знаком с lubridate, но я не вижу простого способа сделать это в виньетке Хэдли. – iacobus
@iacobus см. Обновление – zx8754
В вашем втором примере это должно быть (1, 1/60, 1/(60 * 60)) или (60, 1, 1/60) или (60 * 60, 60, 1), (60, 60, 60) просто умножает все (часы, минуты и секунды) на 60. Например, 18:11:17 должно быть 65477 с или 1091,28 мин или 18,19 часа. То же самое с множителем 'rowSums'. В противном случае он должен работать. – iacobus