我通过以下方式阅读了一些数据:
it.data <- read.csv("inputData/rstar.data.it.csv", header = T, sep = ",")
然后第二和第四列是通货膨胀。兴趣:
inflation.it <- it.data[2]
和
interest.it <- it.data[4]
。
但是,当我尝试将数据重新编码为时间序列对象时,麻烦就开始了,因为列中有前导和尾随NA值。我试过了na.omit()
,it.data[complete.cases(it.data),]
,na.contiguous
,但没有运气。现在发生的是当我尝试将数据转换为TS对象时,
inflation.ts.it <- ts(inflation.it, frequency = 4, interest.start)
我得到的奇怪值与原始数据不匹配。
感谢。
PS。数据(我没有发布所有内容,只是为了得到一个想法):
gdp.log inflation inflation.expectations interest
1 . 2.4361259655 . .
2 . 2.9997029997 . .
3 . 1.5169194865 . .
4 . 1.5059368664 2.11467132957868 .
5 . 2.0591647331 2.02043102148892 .
6 . 1.9896193771 1.76791011585382 .
7 . 2.6436781609 2.04959978443843 .
8 . 3.3951497860 2.52190301432020 .
9 . 4.5467462347 3.14379838970698 .
10 . 5.0890585241 3.91865817645959 .
11 . 5.7110862262 4.68551019278066 .
12 . 7.7262693156 5.76829007519398 .
13 . 7.5292198967 6.51390849069030 .
14 . 6.9679849340 6.98364009316870 .
15 . 7.6006355932 7.45602743492283 .
16 . 5.6352459016 6.93327158141434 .
17 . 5.4853387259 6.42230128873304 .
18 . 6.6649899396 6.34655254012084 .
19 . 5.8577405857 5.91082878825926 .
20 . 5.5528612997 5.89023263777669 .
21 . 4.9125329499 5.74703119375926 .
22 . 4.2442820089 5.14185421108985 .
答案 0 :(得分:0)
假设这些点位于原始CSV中,您可以在读入时将"."
指定为na.string
来修复它。
read.csv(text=
"gdp.log,inflation,inflation.expectations,interest
.,2.4361259655377,.,.
.,2.99970299970301,.,.
.,1.5169194865811,.,.
.,1.50593686649291,2.11467132957868,.
.,2.05916473317866,2.02043102148892,.
.,1.9896193771626,1.76791011585382,.
.,2.64367816091953,2.04959978443843,.",
header=TRUE, na.string=c(".", "NA"))
na.string
可以是字符串的向量,以防多个代码用于缺失值。