我有一个巨大的历史气象站csv数据集(每日来自一个地区的一组气象站的风速数据)我需要计算每月的平均天数每个气象站的风速高于6米/秒。这些台站不包含相同年份的数据。数据集的示例如下所示。
head(windspeed_PR)
STN Year Month Day WDSP WDSP.ms
1 860110 1974 6 19 9.3 4.784
2 860110 1974 7 13 19.0 9.774
3 860110 1974 7 22 9.9 5.093
4 860110 1974 8 20 9.5 4.887
5 860110 1974 9 10 3.3 1.698
6 860110 1974 10 10 6.6 3.395
因此,我基本上需要计算年的每个月的 WDPS.ms 值的数量是多少<6>站( STN ),然后计算每个meteo站每月的平均天数
请问如何计算这个值(最好是R)?
答案 0 :(得分:8)
这很简单。
使用dplyr
:
library(dplyr)
windspeed_PR %>%
group_by(STN, Year, Month) %>%
summarize(n_days = n(),
n_gt6 = sum(WDSP.ms > 6),
p_gt6 = n_gt6 / n_days)
这将返回每个电台,年,月,测量次数,大于6的测量次数及其商数(测量值大于6的比例)。
我不清楚你是否想要进一步总结(例如,坍塌岁月),但它应该成为任何额外工作的良好起点。