CSV文件到R中的直方图

zal*_*loo 6 csv r histogram

我是R的新手,我正在尝试从csv文件(只有一行值)创建一个直方图(值和频率为轴).知道我怎么能这样做吗?

Wil*_*ler 9

我也是R新手,我遇到了同样的事情.实际上,我犯了两个不同的错误,所以我将在这里描述它们.

错误1:将频率表传递给hist().最初我试图传递频率表hist()而不是传递原始数据.解决此问题的一种方法是使用rep()("复制")函数将频率表分解回原始数据集,如下所述:

不过,我只是决定读取原始数据集而不是频率表.

错误2:错误的数据类型.我的原始数据CSV文件包含两列:hostnamebookings(想法是计算每个主机在某个给定时间段内生成的预订数量).我把它读成一张桌子.

> tbl <- read.csv('bookingsdata.csv')
Run Code Online (Sandbox Code Playgroud)

然后,当我尝试从第二列生成直方图时,我这样做了:

> hist(tbl[2])
Run Code Online (Sandbox Code Playgroud)

这给了我在评论中提到的"'x'必须是数字"错误.(它试图将"预订"列标题作为数据值读取.)

这解决了它:

> hist(tbl$bookings)
Run Code Online (Sandbox Code Playgroud)


nic*_*ico 5

你应该真正开始阅读一些基本的R手册... CRAN提供了很多它们(查看手册和贡献的部分)

在任何情况下:

setwd("path/to/csv/file")
myvalues <- read.csv("filename.csv")
hist(myvalues, 100) # Example: 100 breaks, but you can specify them at will
Run Code Online (Sandbox Code Playgroud)

查看更多帮助这些功能的手册页(通过访问?read.table,?read.csv?hist).

  • 谢谢!我收到错误"hist.default中的错误(myvalues,100):'x'必须是数字".我尝试将myvalues转换为asnumeric,但它似乎没有工作(给出错误"hist.default(myvalues)中的错误:'break'的数量无效").知道怎么了? (4认同)