Год вечером. Я сталкиваюсь с некоторыми проблемами при обращении к набору данных
Шаг 1 - Фрейм данных df1. Это ниже работает
df1
ColA ColB ColC ColD
1 gf A 1 2
2 dfg A 2 3
3 er A 3 4
p1 <- list()
p <- list()
bs <- names(Filter(is.factor, df))
for(i in bs)
{
p1[[i]] <- as.data.frame(round(prop.table(table(df[,i]))*100,1))
do.call(rbind,p1) %>% as.data.frame()
}
Шаг 2 - Я не могу сослаться на p1 здесь, как показано ниже
h6(selectInput("Plot1","First Variable",choices = c("",names(df)),width = 200))
s_data <- reactive({
p1[p1[[input$Plot1]] %in% input$Plot1,]
})
После выполнения кода выше Я выполняю код ниже. Есть ли проблема в коде ниже
Plot2 <- reactive(
for(i in bs)
{if (input$Plot1 == i) {
p[[i]] <- print(ggplot(data=s_data()[[i]],aes_string(x=reorder(s_data()[[i]]["Var1"],+s_data()[[i]]["Freq"]),y=s_data()[[i]]["Freq"],fill=s_data()[[i]]["Freq"]))+geom_bar(stat = "identity")+ylab("Percentage")+xlab(i)+theme(axis.text.x=element_text(angle=90, hjust=1,size = 12))+geom_text(aes_string(label = s_data()[[i]]["Freq"]),size=4,vjust = 1,hjust =1, colour="white")+coord_flip())
} else if (input$Plot1 == "NULL") {
""
}})
output$Plot2 <- renderPlot(
{
Plot2()
}
)