ARIMA 错误

Error with ARIMA

我正在尝试 运行 .csv 文件中的时态数据集上的 ARIMA。到目前为止,这是我的代码:

Oil_all <- read.delim("/Users/Jkels/Documents/Introduction to Computational
Statistics/Oil production.csv",sep="\t",header=TRUE,stringsAsFactors=FALSE)
Oil_all

文件看起来像:

year.mbbl
1     1880,30
2     1890,77
3    1900,149
4    1905,215
5    1910,328
6    1915,432
7    1920,689
8   1925,1069
9   1930,1412
10  1935,1655
11  1940,2150
12  1945,2595
13  1950,3803
14  1955,5626
15  1960,7674
16  1962,8882
17 1964,10310
18 1966,12016
19 1968,14104
20 1970,16690
21 1972,18584
22 1974,20389
23 1976,20188
24 1978,21922
25 1980,21732
26 1982,19403
27 1984,19608

代码:

apply(Oil_all,1,function(x) sum(is.na(x)))

结果:

[1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

当我 运行 ARIMA:

library(forecast)
auto.arima(Oil_all,xreg=year)

这是错误:

Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : 
  0 (non-NA) cases
In addition: Warning message:
In data.matrix(data) : NAs introduced by coercion

所以,我能够调用数据集并打印出来。但是,当我去检查应用函数中是否存在值时,我看到全是 0,所以我知道出了点问题,这可能就是我收到错误的原因。我只是不确定错误的含义或如何在代码中修复它。

有什么建议吗?

如果我答对了你的问题,应该是这样的:

Oil_all <- read.csv("myfolder/myfile.csv",header=TRUE) 
## I don't have your source data, so I tried to reproduce it with the data you printed
Oil_all
   year value
1  1880    30
2  1890    77
3  1900   149
4  1905   215
5  1910   328
6  1915   432
7  1920   689
8  1925  1069
9  1930  1412
10 1935  1655
11 1940  2150
12 1945  2595
13 1950  3803
14 1955  5626
15 1960  7674
16 1962  8882
17 1964 10310
18 1966 12016
19 1968 14104
20 1970 16690
21 1972 18584
22 1974 20389
23 1976 20188
24 1978 21922
25 1980 21732
26 1982 19403
27 1984 19608


library(forecast)
auto.arima(Oil_all$value,xreg=Oil_all$year)

Series: Oil_all$value 
ARIMA(3,0,0) with non-zero mean 

Coefficients:
         ar1     ar2      ar3  intercept  Oil_all$year
      1.2877  0.0902  -0.4619  -271708.4      144.2727
s.e.  0.1972  0.3897   0.2275   107344.4       55.2108

sigma^2 estimated as 642315:  log likelihood=-221.07
AIC=454.15   AICc=458.35   BIC=461.92

你的导入应该是

Oil_all<-read.csv("/Users/Jkels/Documents/Introduction to Computational Statistics/Oil production.csv")

这就是为什么你的数据很奇怪。抱歉,我没有 comment.I 和 Nemesi 做的一样的名声,然后就成功了。我认为您正在尝试将 csv 导入为制表符分隔文件。