【问题标题】:Unable to produce histogram from simple dataset无法从简单数据集生成直方图
【发布时间】:2015-11-02 09:50:37
【问题描述】:

我有以下简单的数据集(如下所示的一小部分),并希望使用 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) 中的错误:'height' 必须是向量或矩阵

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 文件。

我已尝试标记为重复的问题中的解决方案,但无济于事。

【问题讨论】:

  • 旁注:barplothist 是完全不同的东西。
  • 可能重复,例如:stackoverflow.com/questions/2349205/…
  • 感谢阿德里安的链接,我之前尝试过 MD1= read.csv("MD_qual_OTU_sorted_2.csv", header= T, sep=",") 和 MD1= read.csv("MD_qual_OTU_sorted_2. csv", header= T, dec=",") 但没有喜悦:(

标签: r histogram


【解决方案1】:

鉴于数据,我猜您想要的是条形图。 您得到的错误是 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])

【讨论】:

  • 谢谢你,太好了:)
猜你喜欢
  • 2010-10-29
  • 2012-08-14
  • 2014-09-21
  • 2020-02-07
  • 1970-01-01
  • 1970-01-01
  • 2011-02-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多