来自计数csv文件的简单R(直方图)

来自计数csv文件的简单R(直方图),r,graph,histogram,frequency,R,Graph,Histogram,Frequency,嗨,伙计们,我正在尝试绘制一个简单2d文件的频率图 file:data.csv terms,count 1,10 5,17 3,28 9,30 我希望第一列(术语)是x轴,第二列(计数)是高度/百分比 我试过这个: d<-read.csv(data.csv) hist(d) Error in hist.default(d) : 'x' must be numeric dc<-table(d) hist(dc) <-- wrong result. d 问题在于hist()

嗨,伙计们,我正在尝试绘制一个简单2d文件的频率图

file:data.csv
terms,count
1,10
5,17
3,28
9,30
我希望第一列(术语)是x轴,第二列(计数)是高度/百分比

我试过这个:

d<-read.csv(data.csv)
hist(d)
Error in hist.default(d) : 'x' must be numeric
dc<-table(d)
hist(dc)  <-- wrong result.
d


问题在于
hist()
需要一个向量,该向量包含的对象与数据中的对象一样多。您正在为其提供频率表

见此:

> df <- data.frame(obj = c(1,2,3,4,5), count = c(2,3,5,4,2))

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

> hist(rep(df$obj, df$count), breaks=0:5)
[img]

> rep(df$obj, df$count)
 [1] 1 1 2 2 2 3 3 3 3 3 4 4 4 4 5 5
>df历史(df)
历史默认值(df)中出错:“x”必须是数字
>历史(代表(df$obj,df$count),中断=0:5)
[img]
>代表(df$obj,df$count)
[1] 1 1 2 2 2 3 3 3 3 3 4 4 4 4 5 5


rep(a,n)
逐元素重复
a
n
-次的值。然后你就有了你需要的向量,你可以把它交给
hist()

问题是
hist()
需要一个向量来包含你的对象,就像它们在你的数据中一样。您正在为其提供频率表

见此:

> df <- data.frame(obj = c(1,2,3,4,5), count = c(2,3,5,4,2))

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

> hist(rep(df$obj, df$count), breaks=0:5)
[img]

> rep(df$obj, df$count)
 [1] 1 1 2 2 2 3 3 3 3 3 4 4 4 4 5 5
>df历史(df)
历史默认值(df)中出错:“x”必须是数字
>历史(代表(df$obj,df$count),中断=0:5)
[img]
>代表(df$obj,df$count)
[1] 1 1 2 2 2 3 3 3 3 3 4 4 4 4 5 5



rep(a,n)
逐元素重复
a
n
-次的值。然后您就有了所需的向量,您可以将其交给
hist()

Hi文件:数据不是第一行编号。条形图和条形图仍然会给出错误的结果。我想要一个“条形”图,以(1,5,3,9)为x轴,以Y轴上的计数为百分比?在这种情况下,这实际上不是问题,我必须同意@affael-
hist(d)
将给出一个错误,无法传递数据帧不能将数据帧传递给
hist
的语句不正确。如果所有列都是“数字”列,您将获得每列的单独直方图。Hi文件:数据不是第一行编号。条形图和条形图仍然会给出错误的结果。我想要一个“条形”图,以(1,5,3,9)为x轴,以Y轴上的计数为百分比?在这种情况下,这实际上不是问题,我必须同意@affael-
hist(d)
将给出一个错误,无法传递数据帧不能将数据帧传递给
hist
的语句不正确。如果所有的列都是“数字”的,你会得到一个单独的柱状图。太棒了,谢谢拉斐尔!有道理!您可能有兴趣知道,在Mac上运行的R3.0.2上的前两行代码不会引发错误。错误确实出现在32位WinXP中的R2.15.1上。非常感谢Raffael!有道理!您可能有兴趣知道,在Mac上运行的R3.0.2上的前两行代码不会抛出错误。错误确实出现在32位WinXP中的R2.15.1上。这太疯狂了-我实际上投了赞成票,显然有三个用户(帐户)投了反对票-荒谬的@Яaffael-同意不需要投反对票,这是一个合理的问题,但已经回答了其他问题,但仍然有一个谜,为什么
read.csv(data.csv)
不是错误的来源,因为文件名没有引号。这太疯狂了-我实际上投了赞成票,显然有三个用户(帐户)投了反对票-荒谬的@Яaffael-同意不需要投反对票,这是一个合理的问题,但已经回答了其他问题。
read.csv(data.csv)
之所以不是错误源,是因为文件名没有引号。
> df <- data.frame(obj = c(1,2,3,4,5), count = c(2,3,5,4,2))

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

> hist(rep(df$obj, df$count), breaks=0:5)
[img]

> rep(df$obj, df$count)
 [1] 1 1 2 2 2 3 3 3 3 3 4 4 4 4 5 5