2011-07-14 48 views
5

我想繪製a和b,每個由7500個數據點組成。然而,當 我試圖陰謀(X,Y),我得到了以下錯誤:在R中繪圖;不能被強制加倍錯誤

> plot(a[11],b[11]) 
Error in xy.coords(x, y, xlabel, ylabel, log) : 
    (list) object cannot be coerced to type 'double' 

這是奇怪的,因爲所有的值的所有整數。 我能做什麼?

謝謝。

+4

this:http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example – Chase

回答

7

它看起來像你試圖從列表中繪製一個向量。改爲使用$[[]]代替。

這是你的問題:

a <- as.list(data.frame("x"=1:5,"y"=5:1)) 
b <- as.list(data.frame("x"=1:5,"y"=5:1)) 

plot(a[2],b[2]) ## recreates your error 

這裏的解決方案:

plot(a$y, b$y) ## plots as expected subsetting by $ 

或者,如果你願意堅持使用數字:

plot(a[[2]],b[[2]]) 

我會強烈建議您閱讀與此相關的幫助頁面:

?'['