質問

Rの初心者です

このスタイルのリストにタイムスタンプがあります:

 [1] "2011-10-04 17:23:28 CEST" "2011-10-04 17:26:13 CEST" "2011-10-05 16:17:34 CEST" "2011-10-07 09:59:37 CEST"

次に、1月、2月などで発生するイベントの数を示しているグラフをプロットしたいと思います。

すべてのタイムスタンプは1つのイベントを表しており、イベントのない数ヶ月がある場合があります(0として表示する必要があります)

役に立ちましたか?

解決

時代のベクトルをdata.frameの列に入れます。以下の例のデータには、現在の時間から2年後の間のランダムな時間がある1000のタイムスタンプがあります。

dat = data.frame(timestamp = Sys.time() + sort(round(runif(1000, (24*3600), (2*365*24*3600)))))

次のステップは、タイムスタンプがどの月と年にあるかを識別する新しい列を作成することです。

dat$month = strftime(dat$time, "%b")
dat$year = strftime(dat$time, "%Y")

これで、毎年1か月あたりのタイムスタンプを使用して数えることができます count から plyr パッケージ。

library(plyr)
timestamps_month = count(dat, vars = c("month","year"))

ggplot2でヒストグラムを作成します。

library(ggplot2)
ggplot(data = timestamps_month) + geom_bar(aes(x = month, y = freq, fill = year), stat="identity", position = "dodge")

結果のプロットがどのように見えるかの例については、次のように投稿してください。

CSV時間データでRでヒストグラムを作成する方法は?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top