2015-11-02 60 views
0

我有以下簡單的數據集(下面顯示了一小部分),並希望使用R studio(我可以使用Excel做到這一點)從此生成直方圖。無法從簡單數據集生成直方圖

Samples Number.of.OTUs 
     A    13 
     B    10 
     C    9 
     D    9 

已使用以下命令讀入數據集;

MD1 = read.csv("MD_qual_OTU_sorted_2.csv") 

當我試圖做一個直方圖我得到這個錯誤

hist(MD1) 

錯誤hist.default(MD1): 'X' 必須是數字

這當我嘗試barplot

barplot(MD1) 

錯誤barplot.default(MD1):「高度」必須是一個向量或矩陣

attributes(MD1) 
# $names 
# [1] "Samples"  "Number.of.OTUs" 

# $class 
# [1] "data.frame" 

# $row.names 
# [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 

我知道我可以通過R中手工輸入數據,但我希望能夠讀在CSV文件中。

我試過標記爲重複的問題的解決方案,但無濟於事。

+0

旁註:'barplot'和'hist'是完全不同的事情。 – 2015-11-02 09:53:10

+0

可能的重複,例如:http://stackoverflow.com/questions/2349205/cant-draw-histogram-x-must-be-numeric – symbolrush

+0

感謝您的鏈接阿德里安,我以前嘗試MD1 = read.csv(「MD_qual_OTU_sorted_2 .csv「,header = T,sep =」,「)和MD1 = read.csv(」MD_qual_OTU_sorted_2.csv「,header = T,dec =」,「)但沒有快樂:( – user2966451

回答

2

鑑於數據我猜你想要的是一個barplot。 您收到的錯誤是barplot命令中的錯誤指定的結果。 您的情況第一個參數(height)應該是Number.of.OTUs,您可以在names.arg參數中指定條的標籤。 什麼你可能尋找的是這樣的:

MD1<-data.frame(Samples=c("A","B","C","D"), Number.of.OTUs=c(13,10,9,9)) 
par(las=1) 
barplot(MD1[,2],names.arg=MD1[,1]) 

enter image description here

+0

謝謝,這很完美: ) – user2966451