我是R的新手并在R中绘图。这可能是一个非常简单的问题,但现在是,
假设我有一个这样的数据框:
a b c d
1 5 6 7
2 3 5 7
1 4 6 2
2 3 5 NA
1 4 4 2
2 2 4 2
1 2 5 1
2 3 4 NA
这里a,b,c,d是列名。我想绘制一个条形图,其在x轴上的列d中具有值,并且在y轴上具有该值的行数。所以7有2行,1有1,2有3。在(3,4,5,6)之间包含缺失值并不重要。
所以结果就像直方图。我知道我可以对d列进行计数,然后进行绘图,但我觉得必须有更好的方法来做到这一点。
答案 0 :(得分:2)
这是一种方法 - 如果我理解你的问题,A,B和C列对你正在做的事情并不重要,它正在绘制D列的频率。
library(ggplot2)
library(reshape)
##get frequencies of col d
test.summary<-table(test$d)
## re-shape the data
test.summary.m<-melt(test.summary)
ggplot(test.summary.m,aes(x=as.factor(Var.1),y=value))+
geom_bar(stat='identity')