尝试在R中创建直方图时,x必须是数字

尝试在R中创建直方图时,x必须是数字,r,excel,histogram,R,Excel,Histogram,我是R的新手。我需要生成一些图。我导入了一个excel文件,需要在一列上创建一个直方图。我的输入代码是- file=read.xlsx('femalecommentcount.xlsx',1,header=FALSE) col=file[2] col看起来像这个(部分)- 第一列是行号。我不知道如何删除这个。第二列是我想要的柱状图数据。hist()函数需要一个向量,我不知道如何准确地转换 如果我只是打个简单的电话- hist(col) 它给出了- Error in hist.default(

我是R的新手。我需要生成一些图。我导入了一个excel文件,需要在一列上创建一个直方图。我的输入代码是-

file=read.xlsx('femalecommentcount.xlsx',1,header=FALSE)
col=file[2]
col看起来像这个(部分)-

第一列是行号。我不知道如何删除这个。第二列是我想要的柱状图数据。hist()函数需要一个向量,我不知道如何准确地转换

如果我只是打个简单的电话-

hist(col)
它给出了-

Error in hist.default(col) : 'x' must be numeric
我从互联网上随机尝试了几个命令,但都不起作用

我的最终目标是在该列上生成一个好的直方图(可能还有其他图表),以便更好地了解我的数据分布

  • 它应该是col=file[[2]]或col=file[,2]---注释中给出的解决方案
  • 数据导入应采用正确的方式,以避免数字问题

  • 尝试
    hist(col$second\u col)
    或第二列的任何名称。它应该是
    col=file[[2]]
    col=file[,2]
    实际上我的column没有头。hist(列$1)/hist(文件$2)不工作@RonakShah@MrFlickcol=file[[2]]显示了不同的表示,当我试图将其转换为向量时也是如此。typeof(col)现在表示整数。但是,hist()会给出相同的错误。
    typeof()
    并没有那么有用,请改用
    class()
    。我猜您的数据是一个“因子”,这意味着其中可能有非数值,或者您的导入不正确。您不想在因子上使用
    作为.numeric
    。最好先正确导入数据,并在绝对必要时使用
    as.numeric(as.character())
    Error in hist.default(col) : 'x' must be numeric