超过阈值的timeseries值的合计计数(按年份和月份)

超过阈值的timeseries值的合计计数(按年份和月份),r,aggregate,threshold,R,Aggregate,Threshold,我现在正在学习R,并使用SEAS软件包来帮助我在R中进行一些计算,数据的格式与SEAS软件包类似。这是一个时间序列 require(seas) data(mscdata) dat.int <- (mksub(mscdata, id=1108447)) 但是,我现在需要计算每个月降雨量>=1.0mm的天数。所以在最后。我将有两列(每年每个月,每个月的总天数降雨量>=1.0mm) 我不知道如何写这段代码,任何帮助都将不胜感激 多谢各位 林 我现在需要计算每个月降雨量>=1.0mm的天数。所以

我现在正在学习R,并使用SEAS软件包来帮助我在R中进行一些计算,数据的格式与SEAS软件包类似。这是一个时间序列

require(seas)
data(mscdata)
dat.int <- (mksub(mscdata, id=1108447))
但是,我现在需要计算每个月降雨量>=1.0mm的天数。所以在最后。我将有两列(每年每个月,每个月的总天数降雨量>=1.0mm)

我不知道如何写这段代码,任何帮助都将不胜感激

多谢各位

我现在需要计算每个月降雨量>=1.0mm的天数。所以在最后。我将有两列(每年每个月,每个月的总天数降雨量>=1.0mm)

1) 所以dat.int$date是一个日期对象。第一步是需要创建一个新列
dat.int$yearmon
提取年-月,例如使用
zoo::yearmon

或者,如果您确实想要一个新的摘要数据帧:

require(plyr)
rainydays_by_yearmon <- ddply(dat.int, .(yearmon), summarize, rainy_days=sum(rain >= 1.0) )
print.data.frame(rainydays_by_yearmon)

     yearmon rainy_days
1   Jan 1975         14
2   Feb 1975         12
3   Mar 1975         13
4   Apr 1975          6
5   May 1975          6
6   Jun 1975          5
...
355 Jul 2004          3
356 Aug 2004          7
357 Oct 2004         14
358 Nov 2004         16
359 Dec 2004         19
require(plyr)
雨天(按年(月=1.0))
打印.数据.帧(rainydays\u by\u yearmon)
一年一度的雨天
1975年1月1日14
1975年2月2日12
1975年3月3日13
1975年4月4日6
1975年5月5日6
1975年6月6日5
...
2004年7月355日3
356 2004年8月7日
357 2004年10月14日
2004年11月358日16
359 2004年12月19日
注意:您可以使用普通的old R执行上述操作,而无需使用
zoo
plyr/dplyr
软件包。但也可以教你更好、更具可伸缩性和可维护性的代码习惯用法

我现在需要计算每个月降雨量>=1.0mm的天数。所以在最后。我将有两列(每年每个月,每个月的总天数降雨量>=1.0mm)

1) 所以dat.int$date是一个日期对象。第一步是需要创建一个新列
dat.int$yearmon
提取年-月,例如使用
zoo::yearmon

或者,如果您确实想要一个新的摘要数据帧:

require(plyr)
rainydays_by_yearmon <- ddply(dat.int, .(yearmon), summarize, rainy_days=sum(rain >= 1.0) )
print.data.frame(rainydays_by_yearmon)

     yearmon rainy_days
1   Jan 1975         14
2   Feb 1975         12
3   Mar 1975         13
4   Apr 1975          6
5   May 1975          6
6   Jun 1975          5
...
355 Jul 2004          3
356 Aug 2004          7
357 Oct 2004         14
358 Nov 2004         16
359 Dec 2004         19
require(plyr)
雨天(按年(月=1.0))
打印.数据.帧(rainydays\u by\u yearmon)
一年一度的雨天
1975年1月1日14
1975年2月2日12
1975年3月3日13
1975年4月4日6
1975年5月5日6
1975年6月6日5
...
2004年7月355日3
356 2004年8月7日
357 2004年10月14日
2004年11月358日16
359 2004年12月19日
注意:您可以使用普通的old R执行上述操作,而无需使用
zoo
plyr/dplyr
软件包。但也可以教你更好、更具可伸缩性和可维护性的代码习惯用法

我现在需要计算每个月降雨量>=1.0mm的天数。所以在最后。我将有两列(每年每个月,每个月的总天数降雨量>=1.0mm)

1) 所以dat.int$date是一个日期对象。第一步是需要创建一个新列
dat.int$yearmon
提取年-月,例如使用
zoo::yearmon

或者,如果您确实想要一个新的摘要数据帧:

require(plyr)
rainydays_by_yearmon <- ddply(dat.int, .(yearmon), summarize, rainy_days=sum(rain >= 1.0) )
print.data.frame(rainydays_by_yearmon)

     yearmon rainy_days
1   Jan 1975         14
2   Feb 1975         12
3   Mar 1975         13
4   Apr 1975          6
5   May 1975          6
6   Jun 1975          5
...
355 Jul 2004          3
356 Aug 2004          7
357 Oct 2004         14
358 Nov 2004         16
359 Dec 2004         19
require(plyr)
雨天(按年(月=1.0))
打印.数据.帧(rainydays\u by\u yearmon)
一年一度的雨天
1975年1月1日14
1975年2月2日12
1975年3月3日13
1975年4月4日6
1975年5月5日6
1975年6月6日5
...
2004年7月355日3
356 2004年8月7日
357 2004年10月14日
2004年11月358日16
359 2004年12月19日
注意:您可以使用普通的old R执行上述操作,而无需使用
zoo
plyr/dplyr
软件包。但也可以教你更好、更具可伸缩性和可维护性的代码习惯用法

我现在需要计算每个月降雨量>=1.0mm的天数。所以在最后。我将有两列(每年每个月,每个月的总天数降雨量>=1.0mm)

1) 所以dat.int$date是一个日期对象。第一步是需要创建一个新列
dat.int$yearmon
提取年-月,例如使用
zoo::yearmon

或者,如果您确实想要一个新的摘要数据帧:

require(plyr)
rainydays_by_yearmon <- ddply(dat.int, .(yearmon), summarize, rainy_days=sum(rain >= 1.0) )
print.data.frame(rainydays_by_yearmon)

     yearmon rainy_days
1   Jan 1975         14
2   Feb 1975         12
3   Mar 1975         13
4   Apr 1975          6
5   May 1975          6
6   Jun 1975          5
...
355 Jul 2004          3
356 Aug 2004          7
357 Oct 2004         14
358 Nov 2004         16
359 Dec 2004         19
require(plyr)
雨天(按年(月=1.0))
打印.数据.帧(rainydays\u by\u yearmon)
一年一度的雨天
1975年1月1日14
1975年2月2日12
1975年3月3日13
1975年4月4日6
1975年5月5日6
1975年6月6日5
...
2004年7月355日3
356 2004年8月7日
357 2004年10月14日
2004年11月358日16
359 2004年12月19日

注意:您可以使用普通的old R执行上述操作,而无需使用
zoo
plyr/dplyr
软件包。但也可以教你更好的、更可伸缩的、可维护的代码习惯用法。

使用
dput(yourdataframe)
发布一些可复制的R代码。“数据的格式与SEAS软件包的格式相同”是不可接受的。您好,我不知道您在问我什么。但是我编辑了。希望它更有意义。。这是我第一次尝试编程。因此,请原谅我用
dput(yourdataframe)
发布一些可复制的R代码,如果表达方式不正确,请原谅我。“数据的格式与SEAS软件包的格式相同”是不可接受的。您好,我不知道您在问我什么。但是我编辑了。希望它更有意义。。这是我第一次尝试编程。因此,请原谅我用
dput(yourdataframe)
发布一些可复制的R代码,如果表达方式不正确,请原谅我。“数据的格式与SEAS软件包的格式相同”是不可接受的。您好,我不知道您在问我什么。但是我编辑了。希望它更有意义。。这是我第一次尝试编程。因此,请原谅我用
dput(yourdataframe)
发布一些可复制的R代码,如果表达方式不正确,请原谅我。“数据的格式与SEAS软件包的格式相同”是不可接受的。您好,我不知道您在问我什么。但是我编辑了。所以希望它能使se更好