Getting Data


1. Load…

…Packages

if (!require("pacman")) install.packages("pacman")
Warnmeldung:
In format.POSIXlt(as.POSIXlt(x), ...) :
  unknown timezone 'zone/tz/2018c.1.0/zoneinfo/Europe/Berlin'
pacman::p_load(
  haven,
  lme4, 
  sjPlot,
  sjmisc,
  sjlabelled,
  ggthemes, 
  reshape, # reshape dataframes
  tmap, # to map spacial data, get shapefiles
  tmaptools, # to map spacial data
  ggmap, # to map spacial data
  sp, # to handle spacial data
  broom, # to clean up all kinds of datasets
  ggplot2, # to plot 
  gridExtra, # to arrange multiple plots
  tidyverse) # data wrangling
# wd <- "D:/Dropbox/DataVisualization" # Flo
# setwd(wd)

…Bitcoin Prices

# Price of Bitcoins
      # price  <- read_csv("data/crypto-markets.csv")
      # saveRDS(price, "data/price.rds")
price <- readRDS("data/price.rds")
      # Relative Amount of Google Web Searches
      # google <- read_csv("data/Bitcoin_google_1_10_2017.csv")
# saveRDS(google, "data/google.rds")
google <- readRDS("data/google.rds")
# Relative Amount of News
      # news   <- read_csv("data/Bitcoin_news_1_10_2017.csv")
      # saveRDS(news, "data/news.rds")
news <- readRDS("data/news.rds")

…Bitcoin Region

Info on Source of Data

# Relative Amount of Google Web Searches by Region
## excludes low volume countries
gg_oct17_world <- read_csv("data/bitcoin_gg_region_011017.csv", skip = 3,
                           col_names = c("Country", "Bitcoin"))
Parsed with column specification:
cols(
  Country = col_character(),
  Bitcoin = col_integer()
)
## includes low volume countries
gg_oct17_world2 <- read_csv("data/bitcoin_gg_region_all_011017.csv", skip = 3,
                           col_names = c("Country", "Bitcoin"))
Parsed with column specification:
cols(
  Country = col_character(),
  Bitcoin = col_character()
)
## shapefile of world
data(World)

2. Prepare Data

Bitcoin Prices

Prepare Price Data

price %>%
  filter(symbol == "BTC") %>%
  select(date, open, spread, market) ->
price

Merge 3 datasets

price %>%
  right_join(google, by = "date") %>% 
  right_join(news, by = "date") ->
merge

Rename variables

names(merge)[2:ncol(merge)] <- c("Preis", "Spread", "Gesamtwert", 
                                 "Google-Suchen", "Nachrichtenartikel")

Save Dataset

saveRDS(merge, "data/bitcoin_raw.rds")

Bitcoin Region

LS0tCm91dHB1dDoKICBodG1sX25vdGVib29rOgogICAgY29kZV9mb2xkaW5nOiBzaG93CiAgICB0b2M6IHllcwogICAgdG9jX2Zsb2F0OiB5ZXMKICBodG1sX2RvY3VtZW50OgogICAgZGZfcHJpbnQ6IHBhZ2VkCiAgICB0b2M6IHllcwplZGl0b3Jfb3B0aW9uczogCiAgY2h1bmtfb3V0cHV0X3R5cGU6IGlubGluZQotLS0KCiMgR2V0dGluZyBEYXRhCgoKKioqCgojIyAxLiBMb2FkLi4uIHsudGFic2V0fQojIyMgLi4uUGFja2FnZXMKYGBge3IgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRX0KaWYgKCFyZXF1aXJlKCJwYWNtYW4iKSkgaW5zdGFsbC5wYWNrYWdlcygicGFjbWFuIikKcGFjbWFuOjpwX2xvYWQoCiAgaGF2ZW4sCiAgbG1lNCwgCiAgc2pQbG90LAogIHNqbWlzYywKICBzamxhYmVsbGVkLAogIGdndGhlbWVzLCAKICByZXNoYXBlLCAjIHJlc2hhcGUgZGF0YWZyYW1lcwogIHRtYXAsICMgdG8gbWFwIHNwYWNpYWwgZGF0YSwgZ2V0IHNoYXBlZmlsZXMKICB0bWFwdG9vbHMsICMgdG8gbWFwIHNwYWNpYWwgZGF0YQogIGdnbWFwLCAjIHRvIG1hcCBzcGFjaWFsIGRhdGEKICBzcCwgIyB0byBoYW5kbGUgc3BhY2lhbCBkYXRhCiAgYnJvb20sICMgdG8gY2xlYW4gdXAgYWxsIGtpbmRzIG9mIGRhdGFzZXRzCiAgZ2dwbG90MiwgIyB0byBwbG90IAogIGdyaWRFeHRyYSwgIyB0byBhcnJhbmdlIG11bHRpcGxlIHBsb3RzCiAgdGlkeXZlcnNlKSAjIGRhdGEgd3JhbmdsaW5nCgojIHdkIDwtICJEOi9Ecm9wYm94L0RhdGFWaXN1YWxpemF0aW9uIiAjIEZsbwojIHNldHdkKHdkKQpgYGAKCiMjIyAuLi5CaXRjb2luIFByaWNlcwpgYGB7ciBiaXRjb2luIHByaWNlcywgZWNobz1ULCBtZXNzYWdlPUYsIHdhcm5pbmc9RkFMU0V9CiMgUHJpY2Ugb2YgQml0Y29pbnMKICAgICAgIyBwcmljZSAgPC0gcmVhZF9jc3YoImRhdGEvY3J5cHRvLW1hcmtldHMuY3N2IikKICAgICAgIyBzYXZlUkRTKHByaWNlLCAiZGF0YS9wcmljZS5yZHMiKQpwcmljZSA8LSByZWFkUkRTKCJkYXRhL3ByaWNlLnJkcyIpCiAgICAgICMgUmVsYXRpdmUgQW1vdW50IG9mIEdvb2dsZSBXZWIgU2VhcmNoZXMKICAgICAgIyBnb29nbGUgPC0gcmVhZF9jc3YoImRhdGEvQml0Y29pbl9nb29nbGVfMV8xMF8yMDE3LmNzdiIpCiMgc2F2ZVJEUyhnb29nbGUsICJkYXRhL2dvb2dsZS5yZHMiKQpnb29nbGUgPC0gcmVhZFJEUygiZGF0YS9nb29nbGUucmRzIikKCiMgUmVsYXRpdmUgQW1vdW50IG9mIE5ld3MKICAgICAgIyBuZXdzICAgPC0gcmVhZF9jc3YoImRhdGEvQml0Y29pbl9uZXdzXzFfMTBfMjAxNy5jc3YiKQogICAgICAjIHNhdmVSRFMobmV3cywgImRhdGEvbmV3cy5yZHMiKQpuZXdzIDwtIHJlYWRSRFMoImRhdGEvbmV3cy5yZHMiKQpgYGAKCiMjIyAuLi5CaXRjb2luIFJlZ2lvbgpbSW5mbyBvbiBTb3VyY2Ugb2YgRGF0YV0oaHR0cHM6Ly9zdXBwb3J0Lmdvb2dsZS5jb20vdHJlbmRzL2Fuc3dlci80MzU1MjEyKQpgYGB7ciBiaXRjb2luIHJlZ2lvbiwgZWNobz1ULCBtZXNzYWdlPUYsIHdhcm5pbmc9RkFMU0V9CiMgUmVsYXRpdmUgQW1vdW50IG9mIEdvb2dsZSBXZWIgU2VhcmNoZXMgYnkgUmVnaW9uCiMjIGV4Y2x1ZGVzIGxvdyB2b2x1bWUgY291bnRyaWVzCmdnX29jdDE3X3dvcmxkIDwtIHJlYWRfY3N2KCJkYXRhL2JpdGNvaW5fZ2dfcmVnaW9uXzAxMTAxNy5jc3YiLCBza2lwID0gMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sX25hbWVzID0gYygiQ291bnRyeSIsICJCaXRjb2luIikpCgojIyBpbmNsdWRlcyBsb3cgdm9sdW1lIGNvdW50cmllcwpnZ19vY3QxN193b3JsZDIgPC0gcmVhZF9jc3YoImRhdGEvYml0Y29pbl9nZ19yZWdpb25fYWxsXzAxMTAxNy5jc3YiLCBza2lwID0gMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sX25hbWVzID0gYygiQ291bnRyeSIsICJCaXRjb2luIikpCgojIyBzaGFwZWZpbGUgb2Ygd29ybGQKZGF0YShXb3JsZCkKYGBgCgojIyAyLiBQcmVwYXJlIERhdGEgey50YWJzZXR9CiMjIyBCaXRjb2luIFByaWNlcwojIyMjIFByZXBhcmUgUHJpY2UgRGF0YQpgYGB7cn0KcHJpY2UgJT4lCiAgZmlsdGVyKHN5bWJvbCA9PSAiQlRDIikgJT4lCiAgc2VsZWN0KGRhdGUsIG9wZW4sIHNwcmVhZCwgbWFya2V0KSAtPgpwcmljZQpgYGAKCiMjIyMgTWVyZ2UgMyBkYXRhc2V0cwpgYGB7cn0KcHJpY2UgJT4lCiAgcmlnaHRfam9pbihnb29nbGUsIGJ5ID0gImRhdGUiKSAlPiUgCiAgcmlnaHRfam9pbihuZXdzLCBieSA9ICJkYXRlIikgLT4KbWVyZ2UKYGBgCgojIyMjIFJlbmFtZSB2YXJpYWJsZXMKYGBge3J9Cm5hbWVzKG1lcmdlKVsyOm5jb2wobWVyZ2UpXSA8LSBjKCJQcmVpcyIsICJTcHJlYWQiLCAiR2VzYW10d2VydCIsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiR29vZ2xlLVN1Y2hlbiIsICJOYWNocmljaHRlbmFydGlrZWwiKQpgYGAKCiMjIyMgU2F2ZSBEYXRhc2V0CmBgYHtyfQpzYXZlUkRTKG1lcmdlLCAiZGF0YS9iaXRjb2luX3Jhdy5yZHMiKQpgYGAKCgojIyMgQml0Y29pbiBSZWdpb24KCiMjIyMgTWVyZ2UgU2hhcGVmaWxlIHdpdGggR29nbGUgVHJlbmRzIFJlZ2lvbmFsIERhdGEKYGBge3J9CndvcmxkLnNocCA8LSBzcDo6bWVyZ2UoV29ybGQsIGdnX29jdDE3X3dvcmxkLCAKICAgICAgICAgICAgICAgICAgICAgICBieS54ID0gIm5hbWUiLCBieS55ID0gIkNvdW50cnkiLCBhbGwueCA9IFQpCmBgYAoK