Directional statistics in R
我需要为我在定向统计上所做的一些工作创建一个函数。我想用圆圈显示洪水事件的分布,并计算平均方向和方差。
我需要通过用(360/365)乘以儒略日期来计算以弧度为单位的angular值。我遇到了问题,因为我需要一个考虑到我正在考虑的40年记录中的years年的函数。即IF year年angular值=儒略日x(360/366)。
我正在使用的数据是高于阈值的峰,因此我每年都没有数据,并且在某些年份中,我有多个条目
1 2 3 4 5 6 7 8 9 10 | Date Time Flow 04/05/1973 00:00 44.67 22/06/1974 00:00 128.38 22/11/1974 23:45 129.15 26/09/1976 22:00 89.51 15/10/1976 00:00 139.35 24/02/1978 19:30 183.69 27/12/1978 04:00 229.65 18/03/1980 09:15 117.7 02/03/1981 22:00 262.39 |
非常感谢
丰富
也许有一种更优雅的方法,但是请尝试
1 | df$Year<-format(df$Date,"%Y") |
如果只包含一列,则应仅输入年份。然后新建一个列以指示是否为is年
1 2 | df$Leap<-0 df$Leap[df$Year=="1972" | df$ Year=="1976" |df$Year=="1980"]<-1 |
根据数据,您可能会发现更容易将其更改为数字,然后使用%%来查看是否可以将其平均除以4,但是要小心2000年。
然后您可以使用if语句来实现