繁体   English   中英

dplyr / ggplot2:带有包含na值的堆积条的时间图

[英]dplyr/ggplot2: time plot with stacked bars containing na values

如何使用dplyr和ggplot2制作包含na值的堆叠式barplot?

x轴:年
Y轴:观测数和NA数

data <- data.frame(year = c(2015, 2015, 2016, 2016),
                     column2 = c(4, NA, 9, 1))


library (dplyr)

missing_data <- data %>%
                   count(year, complete.cases(column2))

我的结果

year    complete.cases(column2)     n
(dbl)                      (lgl) (int)
1  2015                   FALSE     1
2  2015                    TRUE     1
3  2016                    TRUE     2

我试过的

library(ggplot2)
na_plot  <- ggplot (missing_data, aes(x=year, y=n))  
na_plot+
geom_bar(stat="identity", aes(fill = complete.cases(column2))

我认为函数complete.cases以某种方式干扰变量名。 尝试重命名(也factor year ):

data <- data.frame(year = c(2015, 2015, 2016, 2016),
                   column2 = c(4, NA, 9, 1))

library(dplyr)
library(ggplot2)

missing_data <- data %>%
   count(year, complete.cases(column2))

names(missing_data)[2] = "col2"   

na_plot <- ggplot(missing_data, aes(x=factor(year), y=n))
na_plot + geom_bar(stat="identity", aes(fill = col2))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM