R 关于绘制频率数据的最佳方法的建议
我正在寻找关于从我的数据帧在列中表示范围的频率计数的最佳方法的建议 例如:R 关于绘制频率数据的最佳方法的建议,r,count,histogram,R,Count,Histogram,我正在寻找关于从我的数据帧在列中表示范围的频率计数的最佳方法的建议 例如: my_table<- data.frame('xcat' = c(1,1,1,2,2,2,5,10,10,10,11,11,11,14,14,14, 15,15,15, 17,17,17, 18,18,18,20,20,20)) my_表 缺点是表不允许对箱子大小进行任何调整。在您的情况下,符合要求是完美的,因为您要求的箱子尺寸为1切割允许指定箱子边界,甚
my_table<- data.frame('xcat' = c(1,1,1,2,2,2,5,10,10,10,11,11,11,14,14,14,
15,15,15, 17,17,17, 18,18,18,20,20,20))
my_表
缺点是表
不允许对箱子大小进行任何调整。在您的情况下,符合要求是完美的,因为您要求的箱子尺寸为1<代码>切割
允许指定箱子边界,甚至允许您选择是左边界还是右边界闭合(或打开)。我更喜欢左关闭,这不是默认设置
hist
返回中断和中断计数(甚至更多),而barplot
仅打印:
> my_hist
$breaks
[1] 0.5 1.5 2.5 3.5 4.5 5.5 6.5 7.5 8.5 9.5 10.5 11.5 12.5 13.5 14.5 15.5 16.5
[18] 17.5 18.5 19.5 20.5
$counts
[1] 3 3 0 0 1 0 0 0 0 3 3 0 0 3 3 0 3 3 0 3
$density
[1] 0.10714286 0.10714286 0.00000000 0.00000000 0.03571429 0.00000000 0.00000000 0.00000000
[9] 0.00000000 0.10714286 0.10714286 0.00000000 0.00000000 0.10714286 0.10714286 0.00000000
[17] 0.10714286 0.10714286 0.00000000 0.10714286
$mids
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
$xname
[1] "my_table$xcat"
$equidist
[1] TRUE
attr(,"class")
[1] "histogram"
我更喜欢这样:
plot(density(my_table$xcat))
这也使得覆盖其他频率更容易,例如:
my_table$xcatNew <- c(1,1,1,1,1,1,1,1,1,1,11,12,14,14,14,14,
15,15,15, 17,17,17, 18,18,18,18,20,20)
plot(density(my_table$xcat))
lines(density(my_table$xcatNew), col = "red")
my_表$xcatNew
> my_hist
$breaks
[1] 0.5 1.5 2.5 3.5 4.5 5.5 6.5 7.5 8.5 9.5 10.5 11.5 12.5 13.5 14.5 15.5 16.5
[18] 17.5 18.5 19.5 20.5
$counts
[1] 3 3 0 0 1 0 0 0 0 3 3 0 0 3 3 0 3 3 0 3
$density
[1] 0.10714286 0.10714286 0.00000000 0.00000000 0.03571429 0.00000000 0.00000000 0.00000000
[9] 0.00000000 0.10714286 0.10714286 0.00000000 0.00000000 0.10714286 0.10714286 0.00000000
[17] 0.10714286 0.10714286 0.00000000 0.10714286
$mids
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
$xname
[1] "my_table$xcat"
$equidist
[1] TRUE
attr(,"class")
[1] "histogram"
plot(density(my_table$xcat))
my_table$xcatNew <- c(1,1,1,1,1,1,1,1,1,1,11,12,14,14,14,14,
15,15,15, 17,17,17, 18,18,18,18,20,20)
plot(density(my_table$xcat))
lines(density(my_table$xcatNew), col = "red")