我正試圖計算EEG波每短10毫秒的曲線下面積。爲了首先練習這個,我做了一個小數據集來運行auc
(從包{flux}
)功能。R:由於seq.default錯誤,環路將不會運行
x <- seq(1:10)
y <- c(0:4,5:1)
df <- data.frame(x,y)
attach(df)
plot(x,y)
for (i in 1:10){
x1 <- c(i,(i+1))
y1 <- c(subset(y, x == i),subset(y, x == (i+1)))
auc(x1,y1,thresh = 0)
rm(y1,x1,i)
}
環路應儘量從子集每個變量的兩個數據點,然後運行auc
對這些數據點。但是,在運行循環的時候,我得到這個錯誤:當我在循環外部運行subset
和auc
代碼 Error in seq.default(x[1], x[2], length.out = dens) : 'to' must be a finite number
,它的工作原理沒有問題。任何人都可以告訴我循環中出了什麼問題嗎?
這就是問題:子集(Y,X ==第(i + 1))當我== 10 – Roland
對於i = 10 I + 1 = 11 ,出於你的'df' –
我明白了,我該如何解決這個問題? – Fred