【发布时间】:2017-06-17 12:41:42
【问题描述】:
我有使用 NO2 传感器收集的 NO2 实时数据。数据每秒记录 48 小时 NO2。在不同的家庭中测量了 48 小时的 NO2。有超过 50,000 行和三列。 Here a snapshot.
Homes Time ppb
Home 1 12:00 AM 6
Home 1 12:01 AM 6
Home 1 12:02 AM 7
Home 1 12:03 AM 6
Home 1 12:04 AM 7
Home 1 12:05 AM 9
Home 1 12:06 AM 8
Home 2 12:00 AM 2
Home 2 12:01 AM 3
Home 2 12:02 AM 4
Home 2 12:03 AM 1
Home 2 12:04 AM 6
Home 2 12:05 AM 4
Home 2 12:06 AM 8
我想创建一个新的数据集,该数据集将具有每小时(上午 12 点、凌晨 1 点等)的 NO2 平均值,而不是每秒。我想让 1 am 成为 12:01 am - 1:00 am 的平均值,并继续这一趋势。
我尝试了多种方法,但我还没有弄清楚如何做到这一点。 group_by 和 summarise 函数为我提供了整个数据集中的平均时间(例如凌晨 1 点、凌晨 2 点),但我想要根据家庭数字的每小时平均值。
我尝试使用一个不起作用的循环:
Avg = data.frame(Sensor_analysis)
head(Avg)
Hourly = rep(0, 48)
for (i in 1:48) {
Hourly[i] = mean(Avg$ppb[60*(i-1)+1:60*i])
}
Hourly
【问题讨论】:
-
我猜你可以使用
cut。也看看there -
您能否提供数据的复制和粘贴版本?只需运行
dput(head(Sensor_analysis))。 -
@RoyalTS 我在 R 中运行了 dput(head(Sensor_analysis)),接下来我该怎么做才能让它在这个平台上复制和粘贴?
-
只需编辑您的问题并将其粘贴到那里。
标签: r