Rを使用していくつかのデータをプロットしています。
Date <- c("07/12/2012 05:00:00", "07/12/2012 06:00:00", "07/12/2012 07:00:00",
"07/12/2012 08:00:00","07/12/2012 10:00:00","07/12/2012 11:00:00")
Date <- strptime(Date, "%d/%m/%Y %H:%M")
Counts <- c("0","3","10","6","5","4")
Counts <- as.numeric(Counts)
df1 <- data.frame(Date,Counts,stringsAsFactors = FALSE)
library(ggplot2)
g = ggplot(df1, aes(x=Date, y=Counts)) + geom_line(aes(group = 1))
g
時間の切れ目があるときにデータを実線としてプロットしないようにRに依頼するにはどうすればよいですか?私は通常1時間ごとにデータポイントを持っていますが、時々休憩があります(午前8時から午前10時の間)。これらの点の間で、私は線を接続したくありません。これはRで可能ですか?
編集
ここでの回答に感謝します。私のデータは現在10秒間隔であり、このデータを使用して同じ分析を行いたいと思います。
df <- structure(list(Date = c("11/12/2012", "11/12/2012", "11/12/2012",
"11/12/2012", "11/12/2012", "11/12/2012", "11/12/2012",
"11/12/2012", "11/12/2012", "11/12/2012", "11/12/2012"),
Time = c("20:16:00", "20:16:10", "20:16:20", "20:16:30",
"20:16:40", "20:16:50", "20:43:30", "20:43:40",
"20:43:50", "20:44:00", "20:44:10"),
Axis1 = c(181L, 14L, 65L, 79L, 137L, 104L, 7L, 0L, 0L,
14L, 0L),
Steps = c(13L, 1L, 6L, 3L, 8L, 4L, 1L, 0L, 0L, 0L, 0L)),
.Names = c("Date", "Time", "Axis1", "Steps"),
row.names = c(57337L, 57338L, 57339L, 57340L, 57341L, 57342L,
57502L, 57503L, 57504L, 57505L, 57506L), class = "data.frame")
元のデータフレームに「グループ」列を追加すると、コードが何をしようとしているのか理解できると思いますが、私の質問は、データが10秒間隔になっていることをRに知らせる方法に関するものですか?コードの最初の行を適用して、数値が連続しているかどうか、またはギャップがあるかどうかを判断すると(たとえば、idx <-c(1、diff(df $ Time))、次のエラーが発生します。
r[i1]のエラー--r[-length(r):-( length(r)--lag + 1L)]:二項演算子への非数値引数
変数の後に、時間を正しく認識できるようTime
に追加する必要がありますか?as.POSIXct