R checkData(数据)中出错:仅允许数字数据
我正在尝试从R checkData(数据)中出错:仅允许数字数据,r,numeric,error-code,R,Numeric,Error Code,我正在尝试从changepoint包运行cpt.mean函数。在首次尝试在我的数据帧df2上运行它之后,它给了我一个错误: 我的数据帧df2如下所示: date amount 2012-07-01 0.0000000 2012-08-01 1.1111111 2012-09-01 0.2985075 2012-10-01 0.5141388 2012-11-01 0.0000000 2012-12-01 0.0000000 2013-01-01 0.6
changepoint包运行cpt.mean
函数。在首次尝试在我的数据帧df2
上运行它之后,它给了我一个错误:
我的数据帧df2
如下所示:
date amount
2012-07-01 0.0000000
2012-08-01 1.1111111
2012-09-01 0.2985075
2012-10-01 0.5141388
2012-11-01 0.0000000
2012-12-01 0.0000000
2013-01-01 0.6849315
2013-02-01 1.9762846
2013-03-01 1.1799410
2013-04-01 0.2881844
2013-05-01 0.2617801
2013-06-01 1.2285012
date amount
15522 0.0000000
15553 1.1111111
15584 0.2985075
15614 0.5141388
15645 0.0000000
15675 0.0000000
15706 0.6849315
15737 1.9762846
15765 1.1799410
15796 0.2881844
15826 0.2617801
15857 1.2285012
我的代码:
df2 <- data.frame(df1$date,df1$amount))
df2.pelt <- cpt.mean(df2, method="PELT")
我试图再次运行我的cpt.mean函数,同样的错误出现了。
然后我看到我的专栏中有哪些类:
> class(df2$date.)
[1] "numeric"
> class(df2$amount.)
[1] "numeric"
两次我都得到了“numeric”作为结果,但是cpt.means仍然没有运行
我错过了什么?有什么建议吗
谢谢在中,突出显示了数据
功能:
资料
包含数据的向量、对象或矩阵,其中
您希望找到一个变更点。如果数据是矩阵,则每一行都是
被认为是一个独立的数据集
因此,正如它所说,您的数据应该是向量,矩阵,或者时间序列对象
但是如果您运行类(df2)
它会给您一个data.frame
下面是使用向量运行此函数的一个小示例:
library(changepoint)
x=c(rnorm(100,0,1),rnorm(100,10,1))
cpt.mean(x,penalty="SIC",method="AMOC",class=FALSE)
答案对你有帮助吗?
library(changepoint)
x=c(rnorm(100,0,1),rnorm(100,10,1))
cpt.mean(x,penalty="SIC",method="AMOC",class=FALSE)