Проблемы с импортом данных времени Excel в R (с GUI EZR) - PullRequest
0 голосов
/ 14 мая 2018

Вырвал мои волосы на этом.Мне потребовались часы, чтобы просто запустить и запустить rJava (потому что Mac OS X el capitan не хотел хорошо играть с Java), чтобы загрузить специфичные для Excel пакеты импорта данных и т. Д. Но в конце концов это не помогло моей проблеме,и я как раз в моем уме.Пожалуйста, помогите.

Основная ситуация такова:

Иметь простые данные Excel о продолжительности времени, за промежуток в несколько лет.Таким образом, два столбца, которые я импортирую, - это время (продолжительность) и год (2016, 2017 и т. Д.).

В Excel данные форматируются как [ч]: мм: сс, поэтому они отображаются правильно (данныесвязано с количеством часов, отработанных в месяце, поэтому обычно что-то вроде 80: xx: xx ~ 120: xx: xx).Мне известно, что в Excel, несмотря на то, что ячейки форматируются, как указано выше, и отображаются только соответствующие часы, в действительности Excel добавила (не относящуюся к делу, произвольную) дату к данным часов.Я искал и искал и не нашел способа обойти это ограничение в том, как Excel обрабатывает даты / время / продолжительность.

Я импортирую эти данные в R с помощью пункта меню «импорт данных -> импорт из набора данных Excel».в графическом интерфейсе R Commander, а не в консоли.

Однако при импорте данных в R данные отображаются в виде одного числа, например, прибл.110 часов преобразуется в 4.xxxxx, а не как чч: мм: сс.Поэтому при выполнении анализа и генерации графиков и т. Д. Вместо фактических (значимых) отображаемых данных типа 110: xx: xx отображается совершенно бессмысленный 4.xxxxxx.

Если я изменяю форматирование ячеек Excelчтобы отображать дату и время, а не использовать форматирование ячейки [ч]: мм: сс, R ошибочно интерпретирует данные как нечто бесполезное, например 1901/02/04 05:23

Iустановили и загрузили различные пакеты, такие как xlsx, XLConnect, lubridate и т. д., но это не имело никакого значения для интерпретации данных Excel при импорте, по крайней мере из графического интерфейса.

Скажите, пожалуйста, какили

a) отредактировать необработанные данные в формате, который R будет понимать как продолжительность (и ничего, кроме длительности) в формате чч: мм: сс, или

b) форматировать текущие данные изнутри R после импорта, чтобы они отображали данные правильным образом, а не бесполезным числом или произвольной датой / временем?

[Обратите внимание: я могуСе консоли, когда даны команды и т.д. должны быть выполнены.Но мне нужно найти решение, которое в конечном итоге позволит импортировать данные и / или манипулировать ими из GUI, а не вводить несколько команд в консоль, поскольку конечный пользователь (не я) не имеет возможности программирования и не можетиспользуйте консоль и будете использовать R только через GUI.]

1 Ответ

0 голосов
/ 14 мая 2018

Ваш код импортирует данные из Excel в секундах?

library(lubridate)
duration <- lubridate::as.duration(400000)
as.numeric(duration, "hours")

111.1111

as.numeric(duration, "days")

4.62963

seconds_to_period(400000)

"4d 15H 6M 40S"

...