R语言——基础(赋值、输入、截取数据中的一段数据、缺失值处理)

1 将时间序列数据赋值

a、调用c函数并将6个时序数据赋值给price;

b、调用ts函数,指定price为时序变量,并设置起始时间为2015年1月,频率为12;

c、输出结果为

   

Jan

Feb

Mar

Apr

May

Jun

2015

101

82

66

35

31

7

2 列输入

a、调用scan函数,以列的方式读入6个数据。

b、输出结果

Jan

Feb

Mar

Apr

May

Jun

2015

101

82

66

35

31

7

3 序列变换成log

a、对前面产生的price数据进行对数变换并赋值给log_price。

b、输出结果

Jan

Feb

Mar

Apr

May

Jun

2015

4.615121

4.406719

4.189655

3.555348

3.433987

1.945910

4 子序列,截取序列重的一段end()

a、得到序列中2015年2月到5月的子序列。

  

Feb

Mar

Apr

May

2015

82

66

35

31

5 缺失值插值,缺失值处理

a、将price序列第5个观察值定义为缺失值;

b、调zoo包并进行线性插值;

y1线性插值:

Jan

Feb

Mar

Apr

May

Jun

2015

101

82

66

35

21

7

y2样条插值:

Jan

Feb

Mar

Apr

May

Jun

2015

101.000000

82.000000

66.000000

35.000000

8.107993

7.000000

#1.1 行输入
price <- -c(101,82,66,35,31,7)
price <- -ts(price,start = c(2015,1),frequency = 12)
price
#1.2 列输入
price2 <- scan() 
price2 <- ts(price2,start = c(2015,1),frequency = 12)
price2
#1.3 序列变换 
log_price <- log(price)
log_price
#1.4 子序列
price2 <- window(price,start=c(2015,2),end=c(2015,5))
price2
#1.5 缺失值插值
a <- price
a[5] <- NA
a
#调zoo包
library(zoo)
#线性插值
y1 <- na.approx(a)
y1  
#样条插值
y2 <- na.spline(a)
y2 

猜你喜欢

转载自blog.csdn.net/m0_73982095/article/details/130793068
今日推荐