我有一个带有重复值的字符数据向量。我的最终目标是创建一个条形图,显示矢量中每个唯一值出现的频率。一个很长的路要做如下:
object1=length(df$vector[df$vector=="object1"])
object2=length(df$vector[df$vector=="object2"])
object3=length(df$vector[df$vector=="object3"])
amounts=c(object1,object2, object3)
barplot(amounts)
这有效,但是当有许多唯一值时比较麻烦,这向我表明可以使用循环。我知道可以通过“ unique()”命令在原始向量中获得唯一值的向量,但是我不确定从那里去哪里。以下帖子使我思考,但无法回答我的问题。
Counting the number of elements with the values of x in a vector
答案 0 :(得分:1)
您可以使用ggplot。
安装:
install.packages('ggplot2')
加载库:
library(ggplot2)
情节Barplot:
ggplot(df,aes(x=as.factor(vector)))+geom_bar()
如果向量是数字,则as.factor()函数可以帮助将其更改为类别。