Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error in rle(toplevel) : 'x' must be a vector of an atomic type #153

Open
isaalvesdev opened this issue May 21, 2020 · 0 comments
Open

Error in rle(toplevel) : 'x' must be a vector of an atomic type #153

isaalvesdev opened this issue May 21, 2020 · 0 comments

Comments

@isaalvesdev
Copy link

Oii pessoal, Bom Dia, estou com problemas no meu código, a mensagem acima sempre aparace quando tento publicar ele no shinyapps.io. Voces podem me ajudar ?

Olá pessoal, bom dia. Fiz o meu primeiro app shiny e estou com problemas para postar no shinyapps.io, sempre aparece essa mensagem: Error in rle(toplevel) : 'x' must be a vector of an atomic type.

Alguém poderia me ajudar. ?

library(shiny)

library(shinydashboard)

library(read.dbc)

library(stats)

library(base)

library(dplyr)

library(tidyverse)

library(ggplot2)

library(magrittr)

#Análise----

AM = read.dbc("AMSP1901.dbc")

dados = AM %>% filter(AP_CIDPRI=="E230")

altura = as.numeric(dados$AM_ALTURA)

peso = as.numeric(dados$AM_PESO)

nrow(dados)

ncol(dados)

dados1 = AM %>%

filter(AP_CIDPRI == "F200")

var_esco = dados1 %>%

select(AP_SEXO,AM_QTDTRAN,AM_GESTANT)

##Tabelas:

Sexo = table(var_esco$AP_SEXO)

Sexo_fi = prop.table(Sexo)

Sexo_po = 100 * Sexo_fi

Sexo = c(Sexo,sum(Sexo))

Sexo_fi = c(Sexo_fi,sum(Sexo_fi))

Sexo_po = c(Sexo_po,sum(Sexo_po))

names(Sexo)[3] = "Total"

Sexo_to = cbind(Sexo,Sexo_fi=round(Sexo_fi,digits = 2),Sexo_po=round(Sexo_po,digits = 2))

Quan = table(AM$AM_QTDTRAN)

Quan_fi = prop.table(Quan)

Quan_po = 100 * Quan_fi

Quan = c(Quan,sum(Quan))

Quan_fi = c(Quan_fi,sum(Quan_fi))

Quan_po = c(Quan_po,sum(Quan_po))

names(Quan)[5] = "Total"

Quan_to = cbind(Quan,Quan_fi=round(Quan_fi,digits = 2),Quan_po = round(Quan_po,digits = 2))

Quan_to

Gest = table(AM$AM_GESTANT)

Gest_fi = prop.table(Gest)

Gest_po = 100 * Gest_fi

Gest = c(Gest,sum(Gest))

Gest_fi = c(Gest_fi,sum(Gest_fi))

Gest_po = c(Gest_po,sum(Gest_po))

names(Gest)[3] = "Total"

Gest_to = cbind(Gest,Gest_fi = round(Gest_fi,digits = 2),Gest_po = round(Gest_po,digits = 2))

Gest_to

barplot(table(var_esco$AP_SEXO),ylab="Frequência",cex.names = 0.7,names.arg = c("F","M"),col = "pink",border = NA,axes=TRUE,ylim=c(0,40000))

title("Gráfico de barras para a variável Sexo")

Quant_tran = AM$AM_QTDTRAN

summary(Quant_tran)

x = c(751089,7145,216,8)

prop_x = prop.table(x)

prop_x

names(prop_x) = c("00","01","02","03")

barplot(prop_x,border = "white",col = "pink",xlab = "Quantidade de Transplante",ylab = "Probabilidade",main = "Gráfico de Barras da Quantidadade de Transplante")

source("data.R")

#Usuário----

ui = dashboardPage(skin = "purple",

dashboardHeader(title = "Dashboard DataSus"),

dashboardSidebar(

sidebarMenu(

menuItem("Apresentação",tabName = "apr",icon = icon("caret-right")),

menuItem("Histogramas",tabName = "histogramas",icon = icon("chart-bar")),

menuItem("Dispersão",tabName = "dispersão",icon = icon("chart-bar")),

menuItem("Gráficos de Barras",tabName = "gra_bar",icon = icon("chart-bar")),

menuItem("Tabelas",tabName = "tabela",icon = icon("table"))

)

),

dashboardBody(

tabItems(

tabItem(tabName = "apr",

fluidRow(

infoBox("Observações",75054,icon = icon("list"),color = "blue",width = 4),

infoBox("Variáveis",51,icon = icon("calculator"),color = "blue",width = 4),

infoBox("APAC","AM",icon = icon("info"),color = "blue",width = 4)

),

fluidRow(

background = "black",solidHeader = TRUE,tags$h1("Atividade de Computação Aplicada à Estatistíca - DataSus"),

tags$hr(),

h3("AM - APAC (Autorização de Procedimentos de Alta Complexidade)"),

br(),

tags$p("A atividade proposta pelo professor Mario Hissamitsu Tarumoto tem como função analisar o banco de dados do",strong("DataSus, AM - APAC 2019"),"e assim, tomar dua variáveis contínuas e duas variáveis discretas."),

br(),

tags$p("Então, eu, isabele e minha parceira Laís decidimos criar um simples dashboard no, ",strong("Shiny"),"aqui falaremos um pouco sobre o",strong("DataSus")," e sobre",strong("AM - APAC."),"O ",strong("DataSus"),"é o departamento de informática do",strong("Sistema Único de Saúde do Brasil."),"Trata - se de um orgão da Secretaria Gestão Estratégica e Participativa do Ministério da Saúde, com a responsabilidade de coletar e processar e disseminar informações sobre saúde. Assim, o",strong("APAC - Autorização de Procedimentos de Alta Complexidade"),", a mesma possui dados de uso de medicações e com potêncial para avaliação de indicadores de utilização de medicamentos. Para a atividade usamos",strong("AM - APAC")," de janeiro de 2019. Como somos iniciantes nesse aplicativo existirá alguns erros aqui, aceitamos todo o tipo de sugestões e críticas."),

br(),

strong("Fonte: https://datasus.saude.gov.br/
")

),),

tabItem(tabName = "histogramas",

fluidRow(

infoBox("Observações",9043,icon = icon("list"),color = "purple",width = 4),

infoBox("Variáveis",51,icon = icon("calculator"),color = "purple",width = 4),

infoBox("CID","E230",icon = icon("hospital"),color = "purple",width = 4)

),

fluidRow(

box(title = "Como o peso e a altura se comportam com o distúrbio de crescimento ?",background = "black",solidHeader = TRUE,"De inicio, o distúrbio de crescimento é caracterizado pelo atraso do crescimento infantil afetando a altura.",

br(),br(),"As principais causas para essa deficiência seriam as heranças familiares, os pais podem ter uma baixa estatura, assim há grandes chances da criança nascer baixa, a falta de um hormônio do crescimento(GH) que é produzido pela hipófise localizado no cerébro, sua deficiêcia reduz a taxa de crescimento, o que pode causar a baixa estatura.

Produzido em excesso pode causar o gigantismo, que seria o crescimento fora do normal",br(),"Por fim, a falta de nutrientes, como, vitamina A, Zinco, Ferro. Essas vitaminas em conjunto podem auxiliar no crescimento normal da criança."),

box("O peso também é afetado pela falta de crescimento, pois com a baixa estatura a criança pode ser vitima da obesidade infantil.",background = "black",solidHeader = TRUE,br(),br(),"Como ja citamos anteriormente, para o crescimento é necessário nutrientes, assim, logo existirá um consumo exagerado dos mesmos causando a obesidade infantil. ",br(),"Portanto, para que podessemos averiguar

o comportamento da altura e do peso plotamos histogramas das alturas e dos pesos de crianças."

,br(),strong("Fonte: https://www.pfizer.com.br/…/doenc…/disturbios-do-crescimento
"))

),

fluidRow(

box(title = "Histograma das Alturas",background = "black",solidHeader = TRUE,plotOutput(outputId = "hist_altura",height = 250)),

box(title = "Histograma dos Pesos",background = "black",solidHeader = TRUE,plotOutput(outputId = "hist_peso",height = 250))

)),

tabItem(tabName = "dispersão",

fluidRow(

infoBox("Observações",9043,icon = icon("list"),color = "purple",width = 4),

infoBox("Variáveis",51,icon = icon("calculator"),color = "purple",width = 4),

infoBox("CID","E230",icon = icon("hospital"),color = "purple",width = 4)

),

fluidRow(

box(title = "Como a altura se comporta em relação ao peso das crianças com distúrbios de crescimento ?",background = "black",solidHeader = TRUE,"Podemos dizer que o a altura tem influência sobre o peso, pois com passar da idade a criança tem de consumir uma maior quantidade de nutrientes, todavia, aquela que adquiriram o distúrbio de crescimento tem uma maior chance de ter um sobrepeso, podendo levar a obesidade infantil em casos graves.",br(),strong('Fonte: https://www.pfizer.com.br/…/doenc…/disturbios-do-crescimento
')),

box(title = "Gráfico de Dispersão",solidHeader = TRUE,plotOutput(outputId = "disp")),

)

),

tabItem(tabName = "gra_bar",

fluidRow(

infoBox("Observações",74958,icon = icon("list"),color = "purple",width = 4),

infoBox("Variáveis",51,icon = icon("calculator"),color = "purple",width = 4),

infoBox("CID","F200",icon = icon("hospital"),color = "purple",width = 4)

),

fluidRow(

box(title = "Esquizofrenia",background = "black",solidHeader = TRUE,"A esquizofrenia tem como função de afetar a capacidade de pensar, sentir e de se comportar com clareza. Porém sua causa ainda é desconhecida e existem uma série de fatores psíquicos que contribuem para o seu surgimento, podemos citar por exemplo, experiências que são fora da realidade. O tratamento para esse desequilibrio mental deve ser obrigatório com o uso de ansioliticos psicoterapia e serviços de cuidados especializados.

",br(),"Assim analisamos o seu comportamento em Homens e Mulheres e logo percebemos que no mês de janeiro de 2019 ambos os sexo usam medicamentos para essa doença de forma uniforme, no entanto as Mulheres fazem um uso um pouco maior que os Homens.",br(),

strong("Fonte: https://saude.abril.com.br/…/o-que-e-esquizofrenia-sintoma…/
")),

box(title = "Gráfico de Barras",solidHeader = TRUE,plotOutput(outputId = "bar"))

),

fluidRow(

infoBox("Observações",75305,icon = icon("list"),color = "purple",width = 4),

infoBox("Variáveis",51,icon = icon("calculator"),color = "purple",width = 4),

infoBox("CID","Todos",icon = icon("hospital"),color = "purple",width = 4)

),

fluidRow(

box(title = "Explicando o Transplante de Orgãos no Brasil",background = "black",solidHeader = TRUE,"De acordo com a Revista de Associação Médica Brasileira o programa de transplante no Brasil se destaca pelo crescimento no número de transplante realizados nos últimos anos e pelo investimento público na especialização das suas equipes, consequentemente aumento no número de equipes habilitadas, hoje superior a 200. Assim, com a nossa base de dados de", strong("AM - APAC") ,"de Janeiro de 2019, construimos um gráfico de barras para podermos observar a quantidade de transplantes.",br(),"Logo podemos perceber que houve uma grande quantidade de indivíduos que não precisaram de tranplantes",br(),strong("Fonte: https://www.scielo.br/scielo.php…
")),

box(title = "Gráfico de barras da Quantidade de Transplante",solidHeader = TRUE,plotOutput(outputId = "bar1"))

)

),

tabItem(tabName = "tabela",

fluidRow(

infoBox("Sexo",74958,icon = icon("user-friends"),color = "purple",width = 4),

infoBox("Transplante",7245,icon = icon("exchange-alt"),color = "purple",width = 4),

infoBox("Mulheres Gestantes",2722,icon = icon("child"),color = "purple",width = 4)

),

fluidRow(

box(

mainPanel(

tabsetPanel(

tabPanel("Tabela da Proporção de Sexo ",tableOutput("tab1"))

)

)),

box(

mainPanel(

tabsetPanel(

tabPanel("Tabela da Proporção de Quantidade de Transplante",tableOutput("tab2"))

)

)),

box(mainPanel(

tabsetPanel(

tabPanel("Tabela da Proporção de Mulheres Gestantes",tableOutput("tab3"))

)

)),

box(title = "Explicando as Tabelas",background = "black",solidHeader = TRUE,"Aqui iremos explicar o que as tabelas nos dizem. Em primerio lugar, podemos há ambos os sexos se distribuem de forma igualitaria na base de dados de",strong("AM - APAC")," de janeiro de 2019 havendo pouca diferença entre os Homens e as Mulheres. O sexo feminino se apresenta com uma quantidade de 50.73 % e o sexo Masculino se dá com 49.27%.",br(),

"Em seguida, a segunda Tabela nos diz sobre a quantidade de transplante no ano de 2019, podemos observar que houve uma maior de individuos que não tiveram nenhum transplante com 99.04%, assim, houve aqueles que tiveram 1 transplante, 2 e até 3 transplante.",br(),"E por fim, a tabela de Gestantes, em que há uma pequena quantidade de gestantes, apenas 0.36%.")

)

)

)

))

#Servidor----

server = function(input,output)

{

output$hist_altura = renderPlot({

hist(altura,border = "white",col = "pink",main = "Histograms das Alturas")

curve(dnorm(x,mean(altura),sd(altura)),add = T)

})

output$hist_peso = renderPlot({

hist(peso,border = "white",col = "pink",main = "Histogramas do Peso")

curve(dnorm(x,mean(peso),sd(peso)),add = T)

})

output$disp = renderPlot({

ggplot() + geom_point(aes(x = altura, y = peso),color = "black") + labs(x = "Altura", y = "Peso") + ggtitle("Gráfico de Dispersão")

})

output$bar = renderPlot({

barplot(table(var_esco$AP_SEXO),ylab="Frequência",cex.names = 0.7,names.arg = c("F","M"),col = "pink",border = NA,axes=TRUE,ylim=c(0,40000),main = "Gráfico de Barras da Variavel Sexo")

})

output$tab1 = renderTable({

Sexo_to

})

output$tab2 = renderTable({

Quan_to

})

output$tab3 = renderTable({

Gest_to

})

output$bar1 = renderPlot({

barplot(prop_x,border = "white",col = "pink",xlab = "Quantidade de Transplante",ylab = "Probabilidade",main = "Gráfico de Barras da Quantidadade de Transplante")

})

}

shinyApp(ui,server)

library(rsconnect)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant