【问题标题】:How to plot time series with multiple datapoints on each date in R?如何在 R 中的每个日期绘制具有多个数据点的时间序列?
【发布时间】:2013-10-04 13:29:58
【问题描述】:

我需要在 R 中绘制温度与日期的时间序列。但是,每个日期都有 24 个数据点,因为每小时测量一次温度。我想我需要以某种方式使每个数据点独一无二,但我无法让它工作。

我的数据如下所示:

    dato     time      ampm  temp
 07.09.2012 12:20:17    AM  16.237
 07.09.2012 01:20:17    AM  16.237
 07.09.2012 02:20:17    AM  16.237
 .....
 07.25.2012 12:20:17    AM  16.332
 07.25.2012 01:20:17    AM  16.332
 07.25.2012 02:20:17    AM  16.332
 07.25.2012 03:20:17    AM  16.332

任何帮助将不胜感激!

【问题讨论】:

  • datotime 组合成一个POSIXct 变量。
  • 您能否澄清一下您是否想绘制所有数据点,即每个日期内的多个数据点(然后@Roland 的建议是一个好的开始),或者您是否想以某种方式聚合您的数据,例如每个日期的平均/中位数/第一个/最后一个温度。

标签: r time-series


【解决方案1】:

下面我们使用 zoo 包。请注意,我们使用text=Lines 来保持示例的独立性,但实际上我们会用类似file="myfile.dat" 的东西替换它。

Lines <- "dato     time      ampm  temp
 07.09.2012 12:20:17    AM  16.237
 07.09.2012 01:20:17    AM  16.237
 07.09.2012 02:20:17    AM  16.237
 07.25.2012 12:20:17    AM  16.332
 07.25.2012 01:20:17    AM  16.332
 07.25.2012 02:20:17    AM  16.332
 07.25.2012 03:20:17    AM  16.332
"

library(zoo)
z <- read.zoo(text = Lines, header = TRUE, 
       index = 1:3, tz = "", format = "%m.%d.%Y %I:%M:%S %p")
plot(z)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-03
    • 2023-02-07
    • 2023-02-15
    • 2015-07-06
    • 1970-01-01
    • 2016-07-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多