首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在R中使用hist()函数来获取百分比,而不是原始频率

在R中使用hist()函数来获取百分比,而不是原始频率
EN

Stack Overflow用户
提问于 2011-09-07 02:53:25
回答 2查看 100.5K关注 0票数 38

如何使用R中的hist()函数绘制百分比而不是原始频率?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-02-03 10:14:04

简单地使用freq=FALSE参数不会给出带有百分比的直方图,它会对直方图进行归一化,使总面积等于1。

要获得某个数据集的百分比直方图,例如x,请执行以下操作:

代码语言:javascript
复制
h = hist(x) # or hist(x,plot=FALSE) to avoid the plot of the histogram
h$density = h$counts/sum(h$counts)*100
plot(h,freq=FALSE)

基本上,您要做的是创建一个直方图对象,将密度属性更改为百分比,然后重新绘制。

票数 101
EN

Stack Overflow用户

发布于 2016-08-05 22:32:16

如果您希望显式列出x轴上x的每个值(即绘制一个整数变量的百分比,如counts),则以下命令是更方便的替代方法:

代码语言:javascript
复制
# Make up some data
set.seed(1)
x <- rgeom(100, 0.2)

# One barplot command to get histogram of x
barplot(height = table(factor(x, levels=min(x):max(x)))/length(x),
        ylab = "proportion",
        xlab = "values",
        main = "histogram of x (proportions)")

代码语言:javascript
复制
# Comparison to hist() function
h = hist(x, breaks=(min(x)-1):(max(x))+0.5)
h$density = h$counts/sum(h$counts)*100
plot(h,freq=FALSE, main = "histogram of x (proportions)")

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7324683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档