ログメッセージを表すチブルがあります。それは(とりわけ)2つの列がありますdplyr :: datetimeとlubridate :: dsecondsで作業するときのエラー
- FileCreationDateTimeは、メッセージが発信され、従って、変数をグループ化するように意図されたログファイルを識別する。 (「ファイル名」と考えて)
- EventDateTimeは、私が今、何をしたいのか、いくつかのイベントが
を起こった時刻が開始時刻、終了時刻、各ログファイルの時間を見つけることです(FileCreationDateTimeによって識別される)。
file_durations <-
logMessages%>%
group_by(FileCreationDateTime) %>%
summarise(start = min(EventDateTime),
end = max(EventDateTime),
duration = dseconds(end - start))
コード自体がエラーなしで実行するようだ、私はしかし、結果を印刷することはできませんどちらもそれにアクセスする(少なくともないコラム「期間」):私は(または思考)これは次のコードで行うことができると思いますエラーが返されるので、エラーがdatetimesの正確な値に依存するように見えることがわかりました。私は2つのティブルでMWEをまとめました。 2つのティブルは、1つの値だけが異なります。 1つは動作し、もう1つは動作しません。何が原因でエラーが発生するのかわかりません。誰かが私を啓発することはできますか?
人間が読めるtibbles:
> working
# A tibble: 2 × 2
EventDateTime FileCreationDateTime
<dttm> <dttm>
1 2016-11-24 16:16:44.986 2016-11-24 16:16:46
2 2016-11-24 16:17:43.282 2016-11-24 16:16:46
> broken
# A tibble: 2 × 2
EventDateTime FileCreationDateTime
<dttm> <dttm>
1 2016-11-24 16:16:44.986 2016-11-24 16:16:46
2 2016-11-24 16:18:31.971 2016-11-24 16:16:46
完全MWE:
library(tidyverse)
library(lubridate)
options(digits.secs = 6, digits = 6)
working <- structure(list(EventDateTime = structure(c(1480004204.987, 1480004263.283),
class = c("POSIXct", "POSIXt"),
tzone = "UTC"),
FileCreationDateTime = structure(c(1480000606, 1480000606),
class = c("POSIXct", "POSIXt"),
tzone = "Europe/Vienna")),
.Names = c("EventDateTime", "FileCreationDateTime"),
row.names = c(NA, -2L),
class = c("tbl_df", "tbl", "data.frame"))
working %>%
group_by(FileCreationDateTime) %>%
summarise(start = min(EventDateTime),
end = max(EventDateTime),
duration = dseconds(end - start))
broken <- structure(list(EventDateTime = structure(c(1480004204.987, 1480004311.972),
class = c("POSIXct", "POSIXt"),
tzone = "UTC"),
FileCreationDateTime = structure(c(1480000606, 1480000606),
class = c("POSIXct", "POSIXt"),
tzone = "Europe/Vienna")),
.Names = c("EventDateTime", "FileCreationDateTime"),
row.names = c(NA, -2L),
class = c("tbl_df", "tbl", "data.frame"))
broken %>%
group_by(FileCreationDateTime) %>%
summarise(start = min(EventDateTime),
end = max(EventDateTime),
duration = dseconds(end - start))
私は
のWindows 10上でR 3.4.0 64ビット、lubridate_1.6.0とdplyr_0.5.0を使用しています助けてくれてありがとう!
誰かが再現できますか? – AEF