Compare commits
4
Commits
c374e8cd8e
...
efddf043e3
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
efddf043e3 | ||
|
|
b7166d1578 | ||
|
|
896ba1b3b0 | ||
|
|
ecb5677703 |
@@ -7,6 +7,7 @@ export(join_speaker)
|
||||
export(party_colors)
|
||||
export(read_all)
|
||||
export(read_from_csv)
|
||||
export(read_from_csv_or_fetch)
|
||||
export(repair)
|
||||
export(word_usage_by_date)
|
||||
export(write_to_csv)
|
||||
|
||||
@@ -271,3 +271,22 @@ read_from_csv <- function(path="inst/csv/") {
|
||||
is_valid_res(res)
|
||||
res
|
||||
}
|
||||
|
||||
#' @param path directory of csv files to read
|
||||
#' read data from csv files if they exist already
|
||||
#' otherwise fetch protocols and then write the data into csv files
|
||||
#'
|
||||
#' @export
|
||||
read_from_csv_or_fetch <- function(path="inst/") {
|
||||
path <- make_directory_path(path)
|
||||
res <- tryCatch(read_from_csv(str_c(path, "csv/")),
|
||||
error = function(c) NULL)
|
||||
if (!is.null(res)) return(res)
|
||||
|
||||
fetch_all(str_c(path, "records/"), create=T)
|
||||
read_all(str_c(path, "records/")) %>%
|
||||
repair() ->
|
||||
res
|
||||
write_to_csv(res, str_c(path, "csv/"), create=T)
|
||||
res
|
||||
}
|
||||
|
||||
@@ -9,26 +9,7 @@ Using the `remotes` package, this is easily installed via:
|
||||
```r
|
||||
remotes::install_url("https://git.flavigny.de/christian/hateimparlament/archive/master.zip")
|
||||
```
|
||||
Since the fetching and reading is very slow and depends on an internet connection, all vignettes
|
||||
use `read_from_csv` to read already parsed tibbles from `.csv` files.
|
||||
|
||||
That's why, if you want to build the vignettes yourself, you need to
|
||||
download the source code, e.g. on Linux
|
||||
```
|
||||
git clone https://git.flavigny.de/christian/hateimparlament
|
||||
cd hateimparlament
|
||||
```
|
||||
then start `R` and do
|
||||
```r
|
||||
devtools::load_all()
|
||||
fetch_all(create = TRUE)
|
||||
read_all() %>% repair() -> res
|
||||
write_to_csv(res, create = TRUE)
|
||||
```
|
||||
Then finally, do:
|
||||
```r
|
||||
devtools::install(build_vignettes = TRUE)
|
||||
```
|
||||
If you want to build the vignettes, pass `build_vignettes = TRUE`.
|
||||
|
||||
# Features
|
||||
|
||||
|
||||
@@ -34,9 +34,10 @@ read_all("../inst/records/") %>% repair() -> res
|
||||
```
|
||||
We also used `repair` to fix a bunch of formatting issues in the records.
|
||||
|
||||
For development purposes, we load the tables from csv files.
|
||||
For development purposes, we only fetch records if they are not already
|
||||
stored as csv files:
|
||||
```{r}
|
||||
res <- read_from_csv('../inst/csv/')
|
||||
res <- read_from_csv_or_fetch('../inst/')
|
||||
```
|
||||
|
||||
## Analysis
|
||||
|
||||
@@ -35,10 +35,13 @@ read_all("../records/") %>% repair() -> res
|
||||
```
|
||||
We also used `repair` to fix a bunch of formatting issues in the records.
|
||||
|
||||
For development purposes, we load the tables from csv files.
|
||||
For development purposes, we only fetch records if they are not already
|
||||
stored as csv files:
|
||||
```{r}
|
||||
res <- read_from_csv('../inst/csv/')
|
||||
res <- read_from_csv_or_fetch('../inst/')
|
||||
```
|
||||
|
||||
|
||||
and unpack our tibbles
|
||||
```{r}
|
||||
comments <- res$comments
|
||||
|
||||
@@ -34,9 +34,10 @@ read_all("../inst/records/") %>% repair() -> res
|
||||
```
|
||||
We also used `repair` to fix a bunch of formatting issues in the records.
|
||||
|
||||
For development purposes, we load the tables from csv files.
|
||||
For development purposes, we only fetch records if they are not already
|
||||
stored as csv files:
|
||||
```{r}
|
||||
res <- read_from_csv('../inst/csv/')
|
||||
res <- read_from_csv_or_fetch('../inst/')
|
||||
```
|
||||
|
||||
## Analysis
|
||||
|
||||
@@ -38,9 +38,10 @@ talks <- res$talks
|
||||
We also used `repair` to fix a bunch of formatting issues in the records and unpacked
|
||||
the result into more descriptive variables.
|
||||
|
||||
For development purposes, we load the tables from csv files.
|
||||
For development purposes, we only fetch records if they are not already
|
||||
stored as csv files:
|
||||
```{r}
|
||||
tables <- read_from_csv('../inst/csv/')
|
||||
tables <- read_from_csv_or_fetch('../inst/')
|
||||
|
||||
comments <- tables$comments
|
||||
speeches <- tables$speeches
|
||||
|
||||
@@ -34,9 +34,10 @@ read_all("../inst/records/") %>% repair() -> res
|
||||
```
|
||||
We also used `repair` to fix a bunch of formatting issues in the records.
|
||||
|
||||
For development purposes, we load the tables from csv files.
|
||||
For development purposes, we only fetch records if they are not already
|
||||
stored as csv files:
|
||||
```{r}
|
||||
res <- read_from_csv('../inst/csv/')
|
||||
res <- read_from_csv_or_fetch('../inst/')
|
||||
```
|
||||
|
||||
## Analysis
|
||||
|
||||
Reference in New Issue
Block a user