如何解决在r中创建类似于直方图的表
ggplot2中的直方图功能简化了相当复杂的任务。是否有功能或功能相同但创建表或数据框的函数或包?
# Sample data
list <-c ("Goal","Shot on goal","Blocked","Miss")
type <- sample(list,100,replace=TRUE)
xG <- runif(100)
df <- tibble(Type = type,xG = xG)
# Plot
p <- df %>% ggplot(.,aes(x = xG,fill=Type)) +
geom_histogram(binwidth = 0.3)
p
因此,与其绘制数据,不如创建数据框架,其列和行(在箱中)如下:
行:.00-.25 .26-.50 .51-.75 .76-1.00
专栏:进球,射门,被挡,错过
解决方法
您可以使用cut
将数据划分为不同的bins
,然后再划分为count
。
df %>%
dplyr::count(Type,bins = cut(xG,seq(0,1,0.25))) %>%
tidyr::pivot_wider(names_from = Type,values_from = n)
# A tibble: 4 x 5
bins Blocked Goal Miss `Shot on goal`
<fct> <int> <int> <int> <int>
1 (0,0.25] 6 7 6 10
2 (0.25,0.5] 7 NA 10 6
3 (0.5,0.75] 4 12 7 3
4 (0.75,1] 4 4 6 8
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。