Loading, setting up
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.0 ──
## ✓ ggplot2 3.3.3 ✓ purrr 0.3.4
## ✓ tibble 3.0.6 ✓ dplyr 1.0.3
## ✓ tidyr 1.1.2 ✓ stringr 1.4.0
## ✓ readr 1.4.0 ✓ forcats 0.5.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
library(rtweet)
##
## Attaching package: 'rtweet'
## The following object is masked from 'package:purrr':
##
## flatten
library(googlesheets4)
library(tidytags) # tidytags::process_tweets(searched_statuses)
##
## Attaching package: 'tidytags'
## The following objects are masked from 'package:rtweet':
##
## get_mentions, get_retweets
d <- googlesheets4::read_sheet("https://docs.google.com/spreadsheets/d/1rlcFPlUgPMH-N30AMXNylSwUIl59qe5ECn7_kNaB53E/edit#gid=580742975")
## Using an auto-discovered, cached token.
## To suppress this message, modify your code or options to clearly consent to the use of a cached token.
## See gargle's "Non-interactive auth" vignette for more details:
## https://gargle.r-lib.org/articles/non-interactive-auth.html
## The googlesheets4 package is using a cached token for jrosenb8@utk.edu.
## Auto-refreshing stale OAuth token.
## Reading from "tweets_random_sample"
## Range "tweets_random_sample"
# d <- read_csv(here('data', 'sample-of-tweets.csv'),
# col_types = cols(
# id_str = col_character()
# ))
d_level3 <- select(d, status_id = id_str, level3, created_at)
# searched_statuses <- tidytags::pull_tweet_data(id_vector = d_level3$status_id)
#
# write_rds(searched_statuses, "searched-statuses.rds")
searched_statuses <- read_rds("searched-statuses.rds")
searched_statuses <- tidytags::process_tweets(searched_statuses)
searched_statuses %>%
skimr::skim() %>%
knitr::kable()
## Warning in min.default(structure(c(NA_real_, NA_real_, NA_real_, NA_real_, : no
## non-missing arguments to min; returning Inf
## Warning in max.default(structure(c(NA_real_, NA_real_, NA_real_, NA_real_, : no
## non-missing arguments to max; returning -Inf
character |
user_id |
0 |
1.0000000 |
8 |
18 |
0 |
492 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
status_id |
0 |
1.0000000 |
19 |
19 |
0 |
1352 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
screen_name |
0 |
1.0000000 |
4 |
15 |
0 |
492 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
text |
0 |
1.0000000 |
21 |
320 |
0 |
1352 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
source |
0 |
1.0000000 |
5 |
32 |
0 |
32 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
reply_to_status_id |
1251 |
0.0747041 |
19 |
19 |
0 |
100 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
reply_to_user_id |
1238 |
0.0843195 |
8 |
19 |
0 |
101 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
reply_to_screen_name |
1238 |
0.0843195 |
5 |
15 |
0 |
101 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
ext_media_type |
1352 |
0.0000000 |
NA |
NA |
0 |
0 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
lang |
0 |
1.0000000 |
2 |
3 |
0 |
9 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
quoted_status_id |
1182 |
0.1257396 |
19 |
19 |
0 |
170 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
quoted_text |
1182 |
0.1257396 |
40 |
308 |
0 |
170 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
quoted_source |
1182 |
0.1257396 |
5 |
20 |
0 |
17 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
quoted_user_id |
1182 |
0.1257396 |
7 |
19 |
0 |
167 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
quoted_screen_name |
1182 |
0.1257396 |
5 |
15 |
0 |
167 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
quoted_name |
1182 |
0.1257396 |
4 |
50 |
0 |
167 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
quoted_location |
1182 |
0.1257396 |
0 |
33 |
48 |
112 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
quoted_description |
1182 |
0.1257396 |
0 |
162 |
24 |
144 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
retweet_status_id |
1352 |
0.0000000 |
NA |
NA |
0 |
0 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
retweet_text |
1352 |
0.0000000 |
NA |
NA |
0 |
0 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
retweet_source |
1352 |
0.0000000 |
NA |
NA |
0 |
0 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
retweet_user_id |
1352 |
0.0000000 |
NA |
NA |
0 |
0 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
retweet_screen_name |
1352 |
0.0000000 |
NA |
NA |
0 |
0 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
retweet_name |
1352 |
0.0000000 |
NA |
NA |
0 |
0 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
retweet_location |
1352 |
0.0000000 |
NA |
NA |
0 |
0 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
retweet_description |
1352 |
0.0000000 |
NA |
NA |
0 |
0 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
place_url |
1301 |
0.0377219 |
56 |
56 |
0 |
34 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
place_name |
1301 |
0.0377219 |
4 |
31 |
0 |
34 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
place_full_name |
1301 |
0.0377219 |
8 |
31 |
0 |
34 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
place_type |
1301 |
0.0377219 |
3 |
5 |
0 |
3 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
country |
1301 |
0.0377219 |
13 |
13 |
0 |
1 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
country_code |
1301 |
0.0377219 |
2 |
2 |
0 |
1 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
status_url |
0 |
1.0000000 |
51 |
62 |
0 |
1352 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
name |
0 |
1.0000000 |
3 |
45 |
0 |
491 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
location |
0 |
1.0000000 |
0 |
38 |
74 |
458 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
description |
0 |
1.0000000 |
0 |
166 |
10 |
488 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
url |
65 |
0.9519231 |
20 |
24 |
0 |
466 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
profile_url |
65 |
0.9519231 |
20 |
24 |
0 |
466 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
profile_expanded_url |
67 |
0.9504438 |
14 |
82 |
0 |
465 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
profile_banner_url |
69 |
0.9489645 |
57 |
67 |
0 |
461 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
profile_background_url |
35 |
0.9741124 |
48 |
49 |
0 |
18 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
character |
profile_image_url |
0 |
1.0000000 |
59 |
99 |
0 |
492 |
0 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
hashtags |
755 |
0.4415680 |
NA |
NA |
NA |
NA |
NA |
459 |
1 |
9 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
symbols |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
0 |
1 |
1 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
urls_url |
669 |
0.5051775 |
NA |
NA |
NA |
NA |
NA |
650 |
1 |
5 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
urls_t.co |
669 |
0.5051775 |
NA |
NA |
NA |
NA |
NA |
674 |
1 |
5 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
urls_expanded_url |
669 |
0.5051775 |
NA |
NA |
NA |
NA |
NA |
671 |
1 |
5 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
media_url |
552 |
0.5917160 |
NA |
NA |
NA |
NA |
NA |
800 |
1 |
1 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
media_t.co |
552 |
0.5917160 |
NA |
NA |
NA |
NA |
NA |
800 |
1 |
1 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
media_expanded_url |
552 |
0.5917160 |
NA |
NA |
NA |
NA |
NA |
800 |
1 |
1 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
media_type |
552 |
0.5917160 |
NA |
NA |
NA |
NA |
NA |
1 |
1 |
1 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
ext_media_url |
552 |
0.5917160 |
NA |
NA |
NA |
NA |
NA |
800 |
1 |
4 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
ext_media_t.co |
552 |
0.5917160 |
NA |
NA |
NA |
NA |
NA |
800 |
1 |
4 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
ext_media_expanded_url |
552 |
0.5917160 |
NA |
NA |
NA |
NA |
NA |
800 |
1 |
4 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
mentions_user_id |
1003 |
0.2581361 |
NA |
NA |
NA |
NA |
NA |
333 |
1 |
10 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
mentions_screen_name |
1003 |
0.2581361 |
NA |
NA |
NA |
NA |
NA |
333 |
1 |
10 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
geo_coords |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
5 |
2 |
2 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
coords_coords |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
5 |
2 |
2 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
list |
bbox_coords |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
35 |
8 |
8 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
is_quote |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0.1257396 |
FAL: 1182, TRU: 170 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
is_retweet |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0.0000000 |
FAL: 1352 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
quoted_verified |
1182 |
0.1257396 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0.0823529 |
FAL: 156, TRU: 14 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
retweet_verified |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NaN |
: |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
protected |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0.0000000 |
FAL: 1352 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
verified |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0.1649408 |
FAL: 1129, TRU: 223 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
account_lang |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NaN |
: |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
has_hashtags |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0.4452663 |
FAL: 750, TRU: 602 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
is_reply |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0.0747041 |
FAL: 1251, TRU: 101 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
logical |
is_self_reply |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0.0362426 |
FAL: 1303, TRU: 49 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
numeric |
display_text_width |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
1.636324e+02 |
8.632258e+01 |
0 |
95.00 |
167.0 |
245.00 |
292 |
▅▅▆▅▇ |
NA |
NA |
NA |
NA |
numeric |
favorite_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
1.332914e+01 |
3.143010e+01 |
0 |
1.00 |
5.0 |
13.00 |
534 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
retweet_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
4.289941e+00 |
1.237516e+01 |
0 |
0.00 |
1.0 |
4.00 |
242 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
quote_count |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NaN |
NA |
NA |
NA |
NA |
NA |
NA |
|
NA |
NA |
NA |
NA |
numeric |
reply_count |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NaN |
NA |
NA |
NA |
NA |
NA |
NA |
|
NA |
NA |
NA |
NA |
numeric |
quoted_favorite_count |
1182 |
0.1257396 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
7.199412e+01 |
3.532648e+02 |
0 |
6.25 |
14.0 |
23.75 |
3444 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
quoted_retweet_count |
1182 |
0.1257396 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
2.238824e+01 |
1.120557e+02 |
0 |
0.00 |
2.0 |
5.75 |
904 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
quoted_followers_count |
1182 |
0.1257396 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
1.697046e+04 |
1.005753e+05 |
16 |
207.00 |
583.5 |
1931.50 |
1187408 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
quoted_friends_count |
1182 |
0.1257396 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
1.304641e+03 |
6.350308e+03 |
0 |
105.25 |
233.5 |
625.00 |
67834 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
quoted_statuses_count |
1182 |
0.1257396 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
7.507741e+03 |
1.634642e+04 |
29 |
579.00 |
1949.0 |
6802.25 |
123931 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
retweet_favorite_count |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NaN |
NA |
NA |
NA |
NA |
NA |
NA |
|
NA |
NA |
NA |
NA |
numeric |
retweet_retweet_count |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NaN |
NA |
NA |
NA |
NA |
NA |
NA |
|
NA |
NA |
NA |
NA |
numeric |
retweet_followers_count |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NaN |
NA |
NA |
NA |
NA |
NA |
NA |
|
NA |
NA |
NA |
NA |
numeric |
retweet_friends_count |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NaN |
NA |
NA |
NA |
NA |
NA |
NA |
|
NA |
NA |
NA |
NA |
numeric |
retweet_statuses_count |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NaN |
NA |
NA |
NA |
NA |
NA |
NA |
|
NA |
NA |
NA |
NA |
numeric |
followers_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
8.313342e+03 |
1.949865e+04 |
26 |
1186.00 |
2667.0 |
5603.00 |
155292 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
friends_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
4.501538e+02 |
5.980225e+02 |
0 |
99.75 |
255.0 |
589.00 |
4438 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
listed_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
6.941346e+01 |
1.017685e+02 |
0 |
11.00 |
28.0 |
82.00 |
984 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
statuses_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
8.424462e+03 |
8.453235e+03 |
136 |
2964.00 |
5945.0 |
10746.00 |
81988 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
favourites_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
4.601480e+03 |
8.026495e+03 |
0 |
382.00 |
2034.5 |
6113.00 |
97859 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
word_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
2.520488e+01 |
1.368305e+01 |
1 |
14.00 |
25.0 |
37.00 |
56 |
▇▇▇▇▂ |
NA |
NA |
NA |
NA |
numeric |
character_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
1.818314e+02 |
8.554883e+01 |
21 |
112.75 |
185.0 |
263.00 |
320 |
▅▆▆▆▇ |
NA |
NA |
NA |
NA |
numeric |
mentions_count |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
4.622781e-01 |
1.069071e+00 |
0 |
0.00 |
0.0 |
1.00 |
10 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
hashtags_count_api |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
7.307692e-01 |
1.066966e+00 |
0 |
0.00 |
0.0 |
1.00 |
9 |
▇▂▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
hashtags_count_regex |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
7.374260e-01 |
1.072428e+00 |
0 |
0.00 |
0.0 |
1.00 |
9 |
▇▂▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
urls_count_api |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
5.377219e-01 |
5.733252e-01 |
0 |
0.00 |
1.0 |
1.00 |
5 |
▇▁▁▁▁ |
NA |
NA |
NA |
NA |
numeric |
urls_count_regex |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
1.129438e+00 |
6.073497e-01 |
0 |
1.00 |
1.0 |
1.00 |
5 |
▇▂▁▁▁ |
NA |
NA |
NA |
NA |
POSIXct |
created_at |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
2020-03-01 00:29:08 |
2020-04-24 19:16:23 |
2020-03-27 12:52:08 |
1352 |
POSIXct |
quoted_created_at |
1182 |
0.1257396 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
2020-02-20 16:36:56 |
2020-04-24 15:40:08 |
2020-03-27 03:50:55 |
170 |
POSIXct |
retweet_created_at |
1352 |
0.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0 |
POSIXct |
account_created_at |
0 |
1.0000000 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
2008-04-08 02:19:27 |
2016-09-28 16:57:48 |
2011-09-20 05:00:49 |
492 |
users_data <- rtweet::users_data(searched_statuses) %>%
distinct(user_id, .keep_all = T)
users_data %>%
skimr::skim()
Data summary
Name |
Piped data |
Number of rows |
492 |
Number of columns |
20 |
_______________________ |
|
Column type frequency: |
|
character |
11 |
logical |
3 |
numeric |
5 |
POSIXct |
1 |
________________________ |
|
Group variables |
None |
Variable type: character
user_id |
0 |
1.00 |
8 |
18 |
0 |
492 |
0 |
screen_name |
0 |
1.00 |
4 |
15 |
0 |
492 |
0 |
name |
0 |
1.00 |
3 |
45 |
0 |
491 |
0 |
location |
0 |
1.00 |
0 |
38 |
27 |
458 |
0 |
description |
0 |
1.00 |
0 |
166 |
5 |
488 |
0 |
url |
26 |
0.95 |
20 |
24 |
0 |
466 |
0 |
profile_url |
26 |
0.95 |
20 |
24 |
0 |
466 |
0 |
profile_expanded_url |
27 |
0.95 |
14 |
82 |
0 |
465 |
0 |
profile_banner_url |
31 |
0.94 |
57 |
67 |
0 |
461 |
0 |
profile_background_url |
14 |
0.97 |
48 |
49 |
0 |
18 |
0 |
profile_image_url |
0 |
1.00 |
59 |
99 |
0 |
492 |
0 |
Variable type: logical
protected |
0 |
1 |
0.00 |
FAL: 492 |
verified |
0 |
1 |
0.11 |
FAL: 439, TRU: 53 |
account_lang |
492 |
0 |
NaN |
: |
Variable type: numeric
followers_count |
0 |
1 |
5006.44 |
13054.00 |
26 |
893.50 |
1965.0 |
4244.00 |
155292 |
▇▁▁▁▁ |
friends_count |
0 |
1 |
347.27 |
523.58 |
0 |
72.75 |
183.0 |
409.50 |
4438 |
▇▁▁▁▁ |
listed_count |
0 |
1 |
47.04 |
80.08 |
0 |
9.00 |
20.0 |
51.00 |
984 |
▇▁▁▁▁ |
statuses_count |
0 |
1 |
6238.60 |
7575.41 |
136 |
1983.50 |
3894.5 |
7491.25 |
81988 |
▇▁▁▁▁ |
favourites_count |
0 |
1 |
3438.78 |
7613.43 |
0 |
190.50 |
1011.5 |
3947.50 |
97859 |
▇▁▁▁▁ |
Variable type: POSIXct
account_created_at |
0 |
1 |
2008-04-08 02:19:27 |
2016-09-28 16:57:48 |
2012-02-12 04:18:07 |
492 |
Interactions
dd <- searched_statuses %>%
select(favorite_count, retweet_count, status_id) %>%
left_join(d_level3)
## Joining, by = "status_id"
interactions_table_back <- dd %>%
group_by(level3) %>%
mutate(total_interactions = favorite_count + retweet_count) %>%
summarize(mean_fav = mean(favorite_count),
sd_fav = sd(favorite_count),
mean_rt = mean(retweet_count),
sd_rt = sd(retweet_count),
mean_total = mean(total_interactions),
median_total = median(total_interactions),
sd_total = sd(total_interactions)) %>%
arrange(desc(mean_total))
interactions_table_back %>%
knitr::kable()
School Closings |
27.851852 |
51.05580 |
16.870370 |
30.8453515 |
44.722222 |
11.5 |
81.0409672 |
Meals |
19.212500 |
39.88455 |
11.150000 |
29.2890873 |
30.362500 |
11.5 |
67.1699608 |
Remote Learning |
12.504587 |
30.28892 |
6.752294 |
12.5817004 |
19.256881 |
8.0 |
41.9747287 |
Staff Highlight |
16.898148 |
23.41137 |
2.277778 |
3.6193492 |
19.175926 |
11.0 |
26.3328190 |
Student Highlight |
16.595506 |
26.02128 |
2.101124 |
3.6619820 |
18.696629 |
9.0 |
29.1677766 |
Community Highlight |
15.861111 |
17.08993 |
2.694444 |
3.9120287 |
18.555556 |
12.5 |
20.3335675 |
Spreading Positive Messages |
15.759036 |
23.16199 |
2.722892 |
4.5164017 |
18.481928 |
9.0 |
26.6047683 |
Universal Announcements |
12.326923 |
28.78534 |
5.955128 |
13.2559630 |
18.282051 |
5.0 |
40.8638644 |
Health Resources |
10.232143 |
18.06452 |
4.142857 |
6.9581308 |
14.375000 |
6.0 |
24.4774943 |
Requests |
10.566667 |
23.19584 |
3.233333 |
4.6139469 |
13.800000 |
6.0 |
27.3576567 |
Multiple |
10.318182 |
11.19263 |
3.363636 |
4.8554874 |
13.681818 |
7.5 |
15.4346128 |
Unrelated to COVID |
11.546961 |
39.73715 |
1.853591 |
5.3408063 |
13.400552 |
5.0 |
44.6688313 |
Events |
8.701613 |
16.11290 |
3.645161 |
7.6149121 |
12.346774 |
5.0 |
22.9941825 |
Direct Reply |
3.410256 |
12.56712 |
1.205128 |
5.4588387 |
4.615385 |
1.0 |
17.9687087 |
Ambiguous |
1.000000 |
0.00000 |
0.750000 |
0.9574271 |
1.750000 |
1.5 |
0.9574271 |
dd %>%
group_by(level3) %>%
mutate(total_interactions = favorite_count + retweet_count) %>%
select(total_interactions) %>%
skimr::skim() %>%
knitr::kable()
## Adding missing grouping variables: `level3`
numeric |
total_interactions |
Ambiguous |
0 |
1 |
1.750000 |
0.9574271 |
1 |
1.00 |
1.5 |
2.25 |
3 |
▇▁▃▁▃ |
numeric |
total_interactions |
Community Highlight |
0 |
1 |
18.555556 |
20.3335675 |
0 |
7.75 |
12.5 |
21.50 |
106 |
▇▂▁▁▁ |
numeric |
total_interactions |
Direct Reply |
0 |
1 |
4.615385 |
17.9687087 |
0 |
0.00 |
1.0 |
2.50 |
113 |
▇▁▁▁▁ |
numeric |
total_interactions |
Events |
0 |
1 |
12.346774 |
22.9941825 |
0 |
2.00 |
5.0 |
13.25 |
155 |
▇▁▁▁▁ |
numeric |
total_interactions |
Health Resources |
0 |
1 |
14.375000 |
24.4774943 |
0 |
2.00 |
6.0 |
14.25 |
134 |
▇▁▁▁▁ |
numeric |
total_interactions |
Meals |
0 |
1 |
30.362500 |
67.1699608 |
0 |
4.00 |
11.5 |
24.00 |
532 |
▇▁▁▁▁ |
numeric |
total_interactions |
Multiple |
0 |
1 |
13.681818 |
15.4346128 |
0 |
3.50 |
7.5 |
17.50 |
53 |
▇▂▁▁▁ |
numeric |
total_interactions |
Remote Learning |
0 |
1 |
19.256881 |
41.9747287 |
0 |
3.00 |
8.0 |
18.00 |
395 |
▇▁▁▁▁ |
numeric |
total_interactions |
Requests |
0 |
1 |
13.800000 |
27.3576567 |
0 |
2.00 |
6.0 |
13.50 |
147 |
▇▁▁▁▁ |
numeric |
total_interactions |
School Closings |
0 |
1 |
44.722222 |
81.0409672 |
0 |
3.25 |
11.5 |
39.50 |
364 |
▇▁▁▁▁ |
numeric |
total_interactions |
Spreading Positive Messages |
0 |
1 |
18.481928 |
26.6047683 |
0 |
3.00 |
9.0 |
21.50 |
139 |
▇▁▁▁▁ |
numeric |
total_interactions |
Staff Highlight |
0 |
1 |
19.175926 |
26.3328190 |
0 |
5.00 |
11.0 |
22.00 |
171 |
▇▁▁▁▁ |
numeric |
total_interactions |
Student Highlight |
0 |
1 |
18.696629 |
29.1677766 |
0 |
3.00 |
9.0 |
19.00 |
164 |
▇▁▁▁▁ |
numeric |
total_interactions |
Universal Announcements |
0 |
1 |
18.282051 |
40.8638644 |
0 |
2.00 |
5.0 |
15.00 |
285 |
▇▁▁▁▁ |
numeric |
total_interactions |
Unrelated to COVID |
0 |
1 |
13.400552 |
44.6688313 |
0 |
1.00 |
5.0 |
12.00 |
599 |
▇▁▁▁▁ |
Time series
ddd <- d_level3 %>%
mutate(created_at = lubridate::ymd_hms(created_at)) %>%
mutate(day = lubridate::round_date(created_at, unit = "day")) %>%
mutate(day = day - lubridate::days(4)) %>%
mutate(week = lubridate::round_date(day, unit = "week")) %>%
count(week, level3) %>%
spread(level3, n, fill = 0) %>%
gather(key, val, -week) %>%
mutate(week_int = lubridate::week(week))
# mutate(val = ifelse(week == lubridate::ymd("2020-03-01"), val * (1 + 4/3),
# ifelse(week == lubridate::ymd("2020-04-26"), val * (1 + 3/4),
# val)))
top_codes <- d %>%
count(level3, sort = TRUE) %>%
filter(n > 25) %>%
rename(key = level3)
dddd <- ddd %>%
semi_join(top_codes)
## Joining, by = "key"
dddd
## # A tibble: 117 x 4
## week key val week_int
## <dttm> <chr> <dbl> <dbl>
## 1 2020-02-23 00:00:00 Community Highlight 0 8
## 2 2020-03-01 00:00:00 Community Highlight 0 9
## 3 2020-03-08 00:00:00 Community Highlight 0 10
## 4 2020-03-15 00:00:00 Community Highlight 6 11
## 5 2020-03-22 00:00:00 Community Highlight 6 12
## 6 2020-03-29 00:00:00 Community Highlight 4 13
## 7 2020-04-05 00:00:00 Community Highlight 5 14
## 8 2020-04-12 00:00:00 Community Highlight 6 15
## 9 2020-04-19 00:00:00 Community Highlight 9 16
## 10 2020-02-23 00:00:00 Direct Reply 0 8
## # … with 107 more rows
dddd %>%
ggplot(aes(x = week, y = val)) +
geom_point(color = "darkgray") +
geom_line() +
facet_wrap(~key, scales = "free_y") +
theme_minimal() +
#geom_line() +
scale_color_brewer(type = "qual") +
ylab("Number of Posts") +
xlab(NULL) +
theme(text = element_text(size = 13, family = "Times")) +
theme(panel.grid.minor = element_blank()) +
scale_x_datetime(labels = scales::date_format("%m-%d")) +
geom_vline(xintercept = lubridate::ymd_hms("2020-03-17 00:00:00"), alpha = .5, linetype = "dashed") +
labs(caption = "Note. Dashed line indicates the median date on which districts closed.")

peaking around closures
remote learning, school closings, universal announcements, meals, requests, direct reply
library(ggtext)
ggplot(subset(dddd, key %in% c("Direct Reply", "Remote Learning", "Meals", "Universal Announcements", "Requests", "School Closings")),
aes(x = week, y = val, group = key, color = key)) +
geom_point(size = 1.5) +
#geom_point(data = dddd, aes(x = week, y = val, group = key), color = "#DCDCDC") +
#geom_line(data = dddd, aes(x = week, y = val, group = key), color = "#DCDCDC") +
geom_line(size = 1) +
# facet_wrap(~key, scales = "free_y") +
theme_bw() +
#geom_line() +
scale_color_brewer("", type = "qual", palette = 2) +
ylab("Number of Posts") +
xlab(NULL) +
theme(text = element_text(size = 16, family = "Times")) +
scale_x_datetime(labels = scales::date_format("%m-%d")) +
geom_vline(xintercept = lubridate::ymd_hms("2020-03-17 00:00:00"), alpha = .5, linetype = "dashed") +
labs(caption = "*Note*. Dashed line indicates the median date on which districts closed.") +
ylim(0, 35) +
theme(plot.caption = element_markdown(lineheight = 1.2)) +
labs(subtitle = "Peaking in Frequency Around Closures")

ggsave("pattern-2.png", width = 10, height = 7)
peaking later
spreading positive messages, staff highlight, student highlight, community highlight, health resources, events
ggplot(subset(dddd, key %in% c("Spreading Positive Messages", "Staff Highlight", "Student Highlight", "Community Highlight", "Helath Resources", "Events")),
aes(x = week, y = val, group = key, color = key)) +
geom_point(size = 1.5) +
#geom_point(data = dddd, aes(x = week, y = val, group = key), color = "#DCDCDC") +
#geom_line(data = dddd, aes(x = week, y = val, group = key), color = "#DCDCDC") +
geom_line(size = 1) +
# facet_wrap(~key, scales = "free_y") +
theme_bw() +
#geom_line() +
scale_color_brewer("", type = "qual", palette = 3) +
ylab("Number of Posts") +
xlab(NULL) +
theme(text = element_text(size = 16, family = "Times")) +
scale_x_datetime(labels = scales::date_format("%m-%d")) +
geom_vline(xintercept = lubridate::ymd_hms("2020-03-17 00:00:00"), alpha = .7, linetype = "dashed") +
labs(caption = "*Note*. Dashed line indicates the median date on which districts closed.") +
ylim(0, 35) +
theme(plot.caption = element_markdown(lineheight = 1.2)) +
labs(subtitle = "Peaking in Frequency Following Closures")

ggsave("pattern-3.png", width = 10, height = 7)
declining after beginning frequent
unrelated to COVID
ggplot(subset(dddd, key %in% c("Unrelated to COVID")),
aes(x = week, y = val, group = key, color = key)) +
geom_point(size = 1.5) +
#geom_point(data = dddd, aes(x = week, y = val, group = key), color = "#DCDCDC") +
#geom_line(data = dddd, aes(x = week, y = val, group = key), color = "#DCDCDC") +
geom_line(size = 1) +
# facet_wrap(~key, scales = "free_y") +
theme_bw() +
#geom_line() +
scale_color_brewer("", type = "qual", palette = 1) +
ylab("Number of Posts") +
xlab(NULL) +
theme(text = element_text(size = 16, family = "Times")) +
scale_x_datetime(labels = scales::date_format("%m-%d")) +
geom_vline(xintercept = lubridate::ymd_hms("2020-03-17 00:00:00"), alpha = .5, linetype = "dashed") +
labs(caption = "*Note*. Dashed line indicates the median date on which districts closed.") +
theme(plot.caption = element_markdown(lineheight = 1.2)) +
labs(subtitle = "Declining in Frequency Following Closures")

ggsave("pattern-1.png", width = 10, height = 7)