小编Fen*_*Mai的帖子

让ggplot2直方图显示y轴上的分类百分比

library(ggplot2)
data = diamonds[, c('carat', 'color')]
data = data[data$color %in% c('D', 'E'), ]
Run Code Online (Sandbox Code Playgroud)

我想比较颜色D和E的克拉直方图,并使用y轴上的分类百分比.我尝试过的解决方案如下:

解决方案1:

ggplot(data=data, aes(carat, fill=color)) +  geom_bar(aes(y=..density..), position='dodge', binwidth = 0.5) + ylab("Percentage") +xlab("Carat")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这不太正确,因为y轴显示估计密度的高度.

解决方案2:

 ggplot(data=data, aes(carat, fill=color)) +  geom_histogram(aes(y=(..count..)/sum(..count..)), position='dodge', binwidth = 0.5) + ylab("Percentage") +xlab("Carat")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这也不是我想要的,因为用于计算y轴上的比率的分母是D + E的总数.

有没有办法用ggplot2的堆积直方图显示分组百分比?也就是说,不是在y轴上显示(bin中的ob数)/ count(D + E),而是希望它显示(bin中的obs数量)/ count(D)和(bin中的obs数量)/count(E)分别为两个颜色类.谢谢.

r ggplot2

12
推荐指数
2
解决办法
8092
查看次数

如何在文本编辑器上打开ipython命令历史记录?

我正在使用Windows机器,并希望使用默认文本编辑器打开ipython历史命令.是否有允许我这样做的命令?谢谢.

ipython

9
推荐指数
1
解决办法
3718
查看次数

将data.frame对象直接转换为R中的列联表

假设我导入了外部数据,这是一个列联表,如下所示:

var_names <-c("School", "Coffeeshop", "Hospitals", "Parks") 
Washington <- c(142, 120, 20, 20)
Seattle<-c(120, 140, 30, 40)
ctable <- data.frame(rbind(Washington, Seattle))
colnames(ctable) <- var_names
ctable

           School Coffeeshop Hospitals Parks
Washington    142       120        20    20
Seattle       120       140        30    40
Run Code Online (Sandbox Code Playgroud)

现在ctable是'data.frame',如何在R中将其类转换为'table'?谢谢!

r

2
推荐指数
1
解决办法
1541
查看次数

标签 统计

r ×2

ggplot2 ×1

ipython ×1