From dd94de8ea8b5c622b93dcc752ec8cbe47291799e Mon Sep 17 00:00:00 2001 From: hrbrmstr Date: Wed, 15 Jan 2020 06:40:38 -0500 Subject: [PATCH] latest debate - jan 2020 --- DESCRIPTION | 4 +- NEWS.md | 3 + README.md | 8 +- ...20-01-14-us-elections-debate-speaking-time.html | 607 +++++++++++++++++++++ data-raw/debates2019.R | 66 ++- data/debates2019.rda | Bin 8904 -> 9621 bytes 6 files changed, 680 insertions(+), 8 deletions(-) create mode 100644 data-raw/2020-01-14-us-elections-debate-speaking-time.html diff --git a/DESCRIPTION b/DESCRIPTION index 2bc62a4..c85444d 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,8 +1,8 @@ Package: ggchicklet Type: Package Title: Create 'Chicklet' (Rounded Segmented Column) Charts -Version: 0.3.0 -Date: 2019-12-20 +Version: 0.4.0 +Date: 2020-01-14 Authors@R: c( person("Bob", "Rudis", email = "bob@rud.is", role = c("aut", "cre"), comment = c(ORCID = "0000-0001-5670-2640")), person("Antoine", "Bichat", role = "ctb") ) diff --git a/NEWS.md b/NEWS.md index 9b4679b..46f0412 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,2 +1,5 @@ +0.4.0 +* Data updated for latest debate + 0.1.0 * Initial release diff --git a/README.md b/README.md index 5477a4d..190f21a 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,7 @@ library(ggchicklet) # current version packageVersion("ggchicklet") -## [1] '0.2.0' +## [1] '0.4.0' ``` ### From the NYTimes @@ -118,9 +118,9 @@ debates2019 %>% | Lang | \# Files | (%) | LoC | (%) | Blank lines | (%) | \# Lines | (%) | | :--- | -------: | ---: | ---: | ---: | ----------: | ---: | -------: | ---: | -| HTML | 8 | 0.44 | 8679 | 0.93 | 2364 | 0.97 | 350 | 0.63 | -| R | 8 | 0.44 | 513 | 0.06 | 38 | 0.02 | 122 | 0.22 | -| Rmd | 2 | 0.11 | 117 | 0.01 | 45 | 0.02 | 85 | 0.15 | +| HTML | 9 | 0.47 | 9049 | 0.93 | 2564 | 0.97 | 387 | 0.65 | +| R | 8 | 0.42 | 575 | 0.06 | 38 | 0.01 | 122 | 0.21 | +| Rmd | 2 | 0.11 | 117 | 0.01 | 45 | 0.02 | 85 | 0.14 | ## Code of Conduct diff --git a/data-raw/2020-01-14-us-elections-debate-speaking-time.html b/data-raw/2020-01-14-us-elections-debate-speaking-time.html new file mode 100644 index 0000000..d64fff9 --- /dev/null +++ b/data-raw/2020-01-14-us-elections-debate-speaking-time.html @@ -0,0 +1,607 @@ + + + + Which Candidates Got the Most Speaking Time in the Democratic Debate - The New York Times + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Advertisement

Which Candidates Got the Most Speaking Time in the Democratic Debate

+ + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + +
+ + + +

+ + How Long Each Candidate Spoke + + + + +

+ + + + + + +
+ + + + + + +
+ +

Military

+
+ +
+ +

Foreign policy

+
+ +
+ +

Trade

+
+ +
+ +

Can a woman win?

+
+ +
+ +

Health care

+
+ +
+ +

Child care

+
+ +
+ +

Education

+
+ +
+ +

Impeachment

+
+ +
+ +

Climate change

+
+ +
+ +

Electability

+
+ + + + +
+ + + + + + + + +
+
+
+ + + + + + + + + + + + + + + + + + + + + +
+ + + Note: Each bar segment represents the length of a candidate’s response to a question. +
+ + +
+ +

+ Senators Elizabeth Warren and Bernie Sanders had the most speaking time of the six presidential candidates in the January Democratic debate. +

+

+ The debate started with a lengthy discussion on military and foreign policy in the wake of an American drone strike that killed Iran’s top military commander. Former Vice President Joseph R. Biden Jr. said his vote in 2002 to authorize the war in Iraq was a mistake. +

+

+ Democrats debated the merits of a new trade deal with Canada and Mexico. Mr. Sanders said he wouldn’t vote for the deal because it doesn’t address climate change, a move backed by Tom Steyer, who said climate is his “number one priority.” Senator Amy Klobuchar, Pete Buttigieg and Ms. Warren said they supported the new deal, which came together after negotiations between President Trump and House Democrats. +

+ + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + +
+ + + Note: The size of each circle represents the total length of a candidate’s responses to a topic. +
+ + +
+ +

+ The candidates again divided into two distinct camps on health care: Mr. Sanders and Ms. Warren said they support a “Medicare for all” approach, while Mr. Biden, Mr. Buttigieg and Ms. Klobuchar criticized the cost of such a plan, instead favoring a “public option.” +

+

+ Mr. Sanders denied that he told Ms. Warren in 2018 that a woman could not win the presidency. “Of course a woman can win the presidency,” he said. All the candidates agreed. +

+

+ Get full coverage of the Democratic presidential debate from the Times. +

+ +
+ + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+ +
+ + + + \ No newline at end of file diff --git a/data-raw/debates2019.R b/data-raw/debates2019.R index fff5bca..67573c4 100644 --- a/data-raw/debates2019.R +++ b/data-raw/debates2019.R @@ -24,6 +24,7 @@ if (!file.exists(here::here("data-raw/2019-09-12-us-elections-debate-speaking-ti if (!file.exists(here::here("data-raw/2019-10-15-us-elections-debate-speaking-time.html"))) download.file("https://www.nytimes.com/interactive/2019/10/15/us/elections/debate-speaking-time.html", here::here("data-raw/2019-10-15-us-elections-debate-speaking-time.html")) if (!file.exists(here::here("data-raw/2019-11-20-us-elections-debate-speaking-time.html"))) download.file("https://www.nytimes.com/interactive/2019/11/20/us/elections/debate-speaking-time.html", here::here("data-raw/2019-11-20-us-elections-debate-speaking-time.html")) if (!file.exists(here::here("data-raw/2019-12-19-us-elections-debate-speaking-time.html"))) download.file("https://www.nytimes.com/interactive/2019/12/19/us/elections/debate-speaking-time.html", here::here("data-raw/2019-12-19-us-elections-debate-speaking-time.html")) +if (!file.exists(here::here("data-raw/2020-01-14-us-elections-debate-speaking-time.html"))) download.file("https://www.nytimes.com/interactive/2020/01/14/us/politics/debate-speaking-time.html", here::here("data-raw/2020-01-14-us-elections-debate-speaking-time.html")) read_html(here::here("data-raw/2019-06-26-us-elections-debate-speaking-time.html")) %>% html_nodes(xpath = ".//script[contains(., 'NYTG_DEMDEBATES')]") %>% @@ -354,7 +355,6 @@ read_html(here::here("data-raw/2019-11-20-us-elections-debate-speaking-time.html ) %>% as_tibble() -> nov_day_1 - read_html(here::here("data-raw/2019-12-19-us-elections-debate-speaking-time.html")) %>% html_nodes(xpath = ".//script[contains(., 'NYTG_DEMDEBATES')]") %>% html_text() %>% @@ -412,6 +412,67 @@ read_html(here::here("data-raw/2019-12-19-us-elections-debate-speaking-time.html ) %>% as_tibble() -> dec_day_1 +read_html(here::here("data-raw/2020-01-14-us-elections-debate-speaking-time.html")) %>% + html_nodes(xpath = ".//script[contains(., 'NYTG_DEMDEBATES')]") %>% + html_text() %>% + stri_split_lines() %>% + unlist() %>% + .[3] %>% + stri_replace_first_regex("^.*NYTG_DEMDEBATES = ", "") %>% + jsonlite::fromJSON() %>% + as_tibble() %>% + mutate( + elapsed = as.numeric(elapsed)/60, + debate_date = as.Date("2020-01-14"), + speaker = stri_trans_totitle(speaker), + timestamp = parse_time(timestamp), + debate_group = 7, + night = 1 + ) %>% + filter(speaker != "") %>% + mutate( + topic = case_when( + topic == "" ~ "Other", + grepl("military", topic) ~ "Military", + grepl("climate", topic) ~ "Climate", + grepl("closing", topic) ~ "Closing", + grepl("judges", topic) ~ "Judges", + grepl("race", topic) ~ "Race", + grepl("education", topic) ~ "Education", + grepl("human-rights", topic) ~ "Human Rights", + grepl("criminal-justice", topic) ~ "Criminal Justice", + grepl("electability", topic) ~ "Electability", + grepl("election-reform", topic) ~ "Election Reform", + grepl("executive-power", topic) ~ "Executive Power", + grepl("candidate-age", topic) ~ "Age", + grepl("foreign-policy", topic) ~ "Foreign Policy", + grepl("gun-control", topic) ~ "Gun Control", + grepl("child-care", topic) ~ "Child Care", + grepl("health-care", topic) ~ "Healthcare", + grepl("immigration", topic) ~ "Immigration", + grepl("impeachment", topic) ~ "Impeachment", + grepl("income-inequality", topic) ~ "Income Inequality", + grepl("female-president", topic) ~ "Female President", + grepl("trade", topic) ~ "Trade", + grepl("economy", topic) ~ "Economy", + grepl("middle-east policy", topic) ~ "Foreign Policy", + grepl("opioids", topic) ~ "Opioids", + grepl("party-strategy", topic) ~ "Party Strategy", + grepl("public-service", topic) ~ "Public Service", + grepl("tech-companies", topic) ~ "Tech Companies", + grepl("white-supremacist violence", topic) ~ "White-Supremacy", + grepl("womens-issues", topic) ~ "Women's Rights", + topic == "" ~ "Other", + TRUE ~ topic + ) + ) %>% + filter( + !is.na(timestamp), + speaker != "", + speaker != "Moderator" + ) %>% + as_tibble() -> jan_20_day_1 + bind_rows( jun_day_1, jun_day_2, @@ -420,7 +481,8 @@ bind_rows( sep_day_1, oct_day_1, nov_day_1, - dec_day_1 + dec_day_1, + jan_20_day_1 ) %>% mutate(topic = case_when( grepl("elect.*form", topic, ignore.case = TRUE) ~ "Election Reform", diff --git a/data/debates2019.rda b/data/debates2019.rda index 7347a0b11cf562935ca559476492fcc14204653d..2beb4ce77f62fa35b8a27d5aa74f4becceaa56cd 100644 GIT binary patch literal 9621 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