展示iris中的前3个值分布
我想展示每个物种中最常见的3个萼片长度值,以便将其呈现为条形图展示iris中的前3个值分布,r,R,我想展示每个物种中最常见的3个萼片长度值,以便将其呈现为条形图 library(Publish) iris$Sepal.Length<-as.character(iris$Sepal.Length) UnivariateTable(Species~Sepal.Length, data=iris) Variable Level setosa (n=50) versicolor (n=50) virginica (n=50) Total (n=150) p-value 1 Sepa
library(Publish)
iris$Sepal.Length<-as.character(iris$Sepal.Length)
UnivariateTable(Species~Sepal.Length, data=iris)
Variable Level setosa (n=50) versicolor (n=50) virginica (n=50) Total (n=150) p-value
1 Sepal.Length 4.3 1 (2.0) 0 (0.0) 0 (0.0) 1 (0.7)
2 4.4 3 (6.0) 0 (0.0) 0 (0.0) 3 (2.0)
3 4.5 1 (2.0) 0 (0.0) 0 (0.0) 1 (0.7)
4 4.6 4 (8.0) 0 (0.0) 0 (0.0) 4 (2.7)
5 4.7 2 (4.0) 0 (0.0) 0 (0.0) 2 (1.3)
6 4.8 5 (10.0) 0 (0.0) 0 (0.0) 5 (3.3)
7 4.9 4 (8.0) 1 (2.0) 1 (2.0) 6 (4.0)
8 5 8 (16.0) 2 (4.0) 0 (0.0) 10 (6.7)
9 5.1 8 (16.0) 1 (2.0) 0 (0.0) 9 (6.0)
10 5.2 3 (6.0) 1 (2.0) 0 (0.0) 4 (2.7)
11 5.3 1 (2.0) 0 (0.0) 0 (0.0) 1 (0.7)
12 5.4 5 (10.0) 1 (2.0) 0 (0.0) 6 (4.0)
13 5.5 2 (4.0) 5 (10.0) 0 (0.0) 7 (4.7)
14 5.6 0 (0.0) 5 (10.0) 1 (2.0) 6 (4.0)
15 5.7 2 (4.0) 5 (10.0) 1 (2.0) 8 (5.3)
16 5.8 1 (2.0) 3 (6.0) 3 (6.0) 7 (4.7)
17 5.9 0 (0.0) 2 (4.0) 1 (2.0) 3 (2.0)
18 6 0 (0.0) 4 (8.0) 2 (4.0) 6 (4.0)
19 6.1 0 (0.0) 4 (8.0) 2 (4.0) 6 (4.0)
20 6.2 0 (0.0) 2 (4.0) 2 (4.0) 4 (2.7)
21 6.3 0 (0.0) 3 (6.0) 6 (12.0) 9 (6.0)
22 6.4 0 (0.0) 2 (4.0) 5 (10.0) 7 (4.7)
23 6.5 0 (0.0) 1 (2.0) 4 (8.0) 5 (3.3)
24 6.6 0 (0.0) 2 (4.0) 0 (0.0) 2 (1.3)
25 6.7 0 (0.0) 3 (6.0) 5 (10.0) 8 (5.3)
26 6.8 0 (0.0) 1 (2.0) 2 (4.0) 3 (2.0)
27 6.9 0 (0.0) 1 (2.0) 3 (6.0) 4 (2.7)
28 7 0 (0.0) 1 (2.0) 0 (0.0) 1 (0.7)
29 7.1 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7)
30 7.2 0 (0.0) 0 (0.0) 3 (6.0) 3 (2.0)
31 7.3 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7)
32 7.4 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7)
33 7.6 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7)
34 7.7 0 (0.0) 0 (0.0) 4 (8.0) 4 (2.7)
35 7.9 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7) < 1e-04
最后,我想用条形图来表示
library(Publish)
iris$Sepal.Length<-as.character(iris$Sepal.Length)
UnivariateTable(Species~Sepal.Length, data=iris)
Variable Level setosa (n=50) versicolor (n=50) virginica (n=50) Total (n=150) p-value
1 Sepal.Length 4.3 1 (2.0) 0 (0.0) 0 (0.0) 1 (0.7)
2 4.4 3 (6.0) 0 (0.0) 0 (0.0) 3 (2.0)
3 4.5 1 (2.0) 0 (0.0) 0 (0.0) 1 (0.7)
4 4.6 4 (8.0) 0 (0.0) 0 (0.0) 4 (2.7)
5 4.7 2 (4.0) 0 (0.0) 0 (0.0) 2 (1.3)
6 4.8 5 (10.0) 0 (0.0) 0 (0.0) 5 (3.3)
7 4.9 4 (8.0) 1 (2.0) 1 (2.0) 6 (4.0)
8 5 8 (16.0) 2 (4.0) 0 (0.0) 10 (6.7)
9 5.1 8 (16.0) 1 (2.0) 0 (0.0) 9 (6.0)
10 5.2 3 (6.0) 1 (2.0) 0 (0.0) 4 (2.7)
11 5.3 1 (2.0) 0 (0.0) 0 (0.0) 1 (0.7)
12 5.4 5 (10.0) 1 (2.0) 0 (0.0) 6 (4.0)
13 5.5 2 (4.0) 5 (10.0) 0 (0.0) 7 (4.7)
14 5.6 0 (0.0) 5 (10.0) 1 (2.0) 6 (4.0)
15 5.7 2 (4.0) 5 (10.0) 1 (2.0) 8 (5.3)
16 5.8 1 (2.0) 3 (6.0) 3 (6.0) 7 (4.7)
17 5.9 0 (0.0) 2 (4.0) 1 (2.0) 3 (2.0)
18 6 0 (0.0) 4 (8.0) 2 (4.0) 6 (4.0)
19 6.1 0 (0.0) 4 (8.0) 2 (4.0) 6 (4.0)
20 6.2 0 (0.0) 2 (4.0) 2 (4.0) 4 (2.7)
21 6.3 0 (0.0) 3 (6.0) 6 (12.0) 9 (6.0)
22 6.4 0 (0.0) 2 (4.0) 5 (10.0) 7 (4.7)
23 6.5 0 (0.0) 1 (2.0) 4 (8.0) 5 (3.3)
24 6.6 0 (0.0) 2 (4.0) 0 (0.0) 2 (1.3)
25 6.7 0 (0.0) 3 (6.0) 5 (10.0) 8 (5.3)
26 6.8 0 (0.0) 1 (2.0) 2 (4.0) 3 (2.0)
27 6.9 0 (0.0) 1 (2.0) 3 (6.0) 4 (2.7)
28 7 0 (0.0) 1 (2.0) 0 (0.0) 1 (0.7)
29 7.1 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7)
30 7.2 0 (0.0) 0 (0.0) 3 (6.0) 3 (2.0)
31 7.3 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7)
32 7.4 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7)
33 7.6 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7)
34 7.7 0 (0.0) 0 (0.0) 4 (8.0) 4 (2.7)
35 7.9 0 (0.0) 0 (0.0) 1 (2.0) 1 (0.7) < 1e-04
有人想帮忙吗
最好的H也许这会让你开始:
library(dplyr)
iris %>%
count(Species, Sepal.Length, sort = TRUE) %>%
group_by(Species) %>%
mutate(n = n/sum(n) * 100) %>%
slice(1:3)
# Species Sepal.Length n
# <fct> <chr> <dbl>
#1 setosa 5 16
#2 setosa 5.1 16
#3 setosa 4.8 10
#4 versicolor 5.5 10
#5 versicolor 5.6 10
#6 versicolor 5.7 10
#7 virginica 6.3 12
#8 virginica 6.4 10
#9 virginica 6.7 10
库(dplyr)
虹膜%>%
计数(种类,萼片长度,排序=真)%>%
组别(种类)%>%
变异(n=n/和(n)*100)%>%
切片(1:3)
#种萼片长度n
#
#1刚毛5 16
#2.5.1 16
#3刚毛4.8 10
#4彩色5.5 10
#5彩色5.6 10
#6彩色5.7 10
#7弗吉尼亚州6.3 12
#8弗吉尼亚州6.4 10
#9弗吉尼亚州6.7 10
试试这个,肯定会有更简单更好的方法
图书馆(dplyr)
图书馆(GG2)
图书馆(比例尺)
df%
变异(萼片长度=性状(萼片长度,液滴水平=真))%>%
分组依据(种,萼片长度)%>%
总结(n=n())%>%
变异(频率=n/和(n))%>%
排列(种类,描述(频率))%>%
变异(秩=行数(描述(频率)),
g=当(秩>3L~4L,
真~秩))%>%
解组()%>%
分组依据(物种,g)%>%
当(g==4L~“其他”时,变异(萼片长度=case_),
真~萼片长度))%>%
总结(频率=总和(频率),
萼片长度=唯一(萼片长度))
ggplot(df、aes(因子(g)、频率、填充=物种))+
几何坐标(位置=位置减淡(宽度=0.75),宽度=0.7)+
几何体文本(aes(标签=萼片长度),位置=位置减淡(宽度=0.75),vjust=-0.2)+
连续缩放(标签=百分比)+
比例x离散(间隔=1:4,标签=c(“第一”、“第二”、“第三”、“其他”))+
花萼(x=“最常见的萼片长度”)
由(v0.3.0)于2020-07-10创建。可能类似于
lappy(split(iris$Sepal.Length,iris$Species),函数(i)sort(prop.table(table(i)),discreating=TRUE)[1:3])
我想指出,Sepal.Length应该是字符,因为我真正使用的数据集包含分类数据。