diff --git a/presentation/ApplicationCategories.R b/presentation/ApplicationCategories.R index 4834f0b..f229ac5 100644 --- a/presentation/ApplicationCategories.R +++ b/presentation/ApplicationCategories.R @@ -2,32 +2,50 @@ library(conflicted) library(yaml) library(RPostgreSQL) library(tidyverse) -conflicts_prefer(dplyr::filter, - dplyr::lag) +conflicts_prefer( + dplyr::filter, + dplyr::lag +) library(magrittr) # read the password from file credentials <- yaml.load_file("../rapids/credentials.yaml") pw <- credentials$PSQL_STRAW$password -#load the PostgreSQL driver +# load the PostgreSQL driver drv <- RPostgres::Postgres() # creates a connection to the postgres database # note that "con" will be used later in each connection to the database -con <- RPostgres::dbConnect(drv, dbname = "staw", - host = "eol.ijs.si", port = 5432, - user = "staw_db", password = pw) +con <- RPostgres::dbConnect(drv, + dbname = "staw", + host = "eol.ijs.si", port = 5432, + user = "staw_db", password = pw +) rm(pw, credentials) # removes the password # check for the bluetooth table, an example dbExistsTable(con, "app_categories") -df_app_categories <- tbl(con, "app_categories") %>% +df_app_categories <- tbl(con, "app_categories") %>% collect() head(df_app_categories) table(df_app_categories$play_store_genre) +# Correct some mistakes +df_app_categories %<>% mutate( + play_store_genre = { + function(x) { + case_when( + x == "Education,Education" ~ "Education", + x == "EducationEducation" ~ "Education", + x == "not_found" ~ "System", + .default = x + ) + } + }(play_store_genre) +) + dbDisconnect(con)