ggplot2中多个二进制列的频率直​​方图?

时间:2017-07-27 01:22:25

标签: r boolean histogram

我有这样的数据集:

Var1 Var2 Var3
 1    NA    1
 1    NA    NA
 1    NA    NA
 NA   1    NA

变量是二元的,在不同的列中,并不是互斥的。(它来自“选择所有适用的”问题)。

我正在尝试在ggplot2中获取直方图,但我无法弄清楚如何将数据放在一个好的位置以使其工作。我错过了什么?

由于

1 个答案:

答案 0 :(得分:0)

df = read.table(text="Var1 Var2 Var3
 1    NA    1
 1    NA    NA
 1    NA    NA
 NA   1    NA",
header=TRUE, stringsAsFactors=FALSE)

library(ggplot2)
Tab = data.frame(values=colSums(df, na.rm=TRUE), names = names(df))
ggplot(data=Tab, aes(x=names, y=values)) +
  geom_bar(stat="identity")

Barplot

或在基地R

barplot(colSums(df, na.rm=TRUE))