R语言时间序列中时间年、月、季、日的处理操作
作者:faith默默
这篇文章主要介绍了R语言时间序列中时间年、月、季、日的处理操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
1、年
pt<-ts(p, freq = 1, start = 2011)
2、月
pt<-ts(p,frequency=12,start=c(2011,1))
frequency=12表示以月份为单位,start 表示时间开始点,start=c(2011,1) 表示从2011年1月开始
3、季度
pt <- ts(p, frequency = 4, start = c(2011, 1))
4、天
pt<-ts(p,frequency=7,start=c(2011,1))
用 ts(p,frequency=365,start=(2011,1))
也可以,但是这个是没有按星期对齐
补充:R语言:ts() 时间序列的建立
ts() 函数:
通过一向量或者矩阵创建一个一元的或多元的时间序列(time series),为ts型对象。
调用格式:
ts(data = NA, start = 1, end = numeric(0), frequency = 1, deltat = 1, ts.eps = getOption("ts.eps"), class, names)
说明:
data
一个向量或者矩阵
start
第一个观测值的时间,为一个数字或者是一个由两个整数构成的向量
end
最后一个观测值的时间,指定方法和start相同
frequency
单位时间内观测值的频数(频率)
deltat
两个观测值间的时间间隔。frequency和deltat必须并且只能给定其中一个
ts.eps
序列之间的误差限,如果序列之间的频率差异小于ts.eps,则认为这些序列的频率相等
class
对象的类型。一元序列的缺省值是“ts”,多元序列的缺省值是c(“mts”,“ts”)
names
一个字符型向量,给出多元序列中每个一元序列的名称,缺省data中每列数据的名称或者Series 1,Series 2, 。。。
Example:
> ts(1:26, start=1986) #最简单的形式 Time Series: Start = 1986 End = 2011 Frequency = 1 [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 > ts(1:26, frequency = 12, start=c(1986,10)) #frequency = 12时,为月份 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 1986 1 2 3 1987 4 5 6 7 8 9 10 11 12 13 14 15 1988 16 17 18 19 20 21 22 23 24 25 26
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。