2012-09-28 88 views
3

我是一個完整的R初學者,並且正在嘗試做一些非常基本的操作 - 使得我從Excel導入的兩個向量的直方圖。hist.default(xa)中的錯誤:'x'必須爲數字

向量是xa和xb。我試圖HIST(XA),並得到了以下錯誤:

Error in hist.default(xa) : 'x' must be numeric 

所以我做了一些搜索,並試圖糾正這種使用as.numeric(XA),並得到了:

Error: (list) object cannot be coerced to type 'double' 

所以我嘗試了as.list函數,但它將我的矢量轉換爲矩陣。不知道發生了什麼事。向量中的數字都是大約-2到+10之間的4位數字。任何幫助將不勝感激!

+3

歡迎的話,請發表[重複的例子(http://stackoverflow.com/questions/5963269/如何對做 - 一個偉大-R重現-例子)。考慮到這是一個數據問題,如果一個數字變量意外地被轉換爲數字變量,那麼將輸出從'dput(head(xa))'和'dput(head(xb))'' – mnel

回答

6

這裏的東西,你可以試試......沒有保證,因爲你沒有給一個工作示例:

newXa <- sapply(xa, as.numeric) 
hist(newXa) 

應該怎樣做是看的「X」

str(x) 
結構

那麼,如果 'XA' 是你如何指X [[ '一']你可以這樣做:

hist(x[['a']]) 

如果str(x)表明,「a」列是一個因素,人們可能有這個更大的成功:

hist(as.numeric(as.character(x[['a']])) ) 
+1

'as.numeric'一個因素... –

+0

確實。將編輯以反映這一點。 –

相關問題