# This report is an exploration of artist Tyler, the Creator’s throughout his careeer.

## Warning: Explicit Content

Tyler, the Creator released his first album, Bastard, in 2009. Shortly after that release, Tyler started to get criticized for his controversial lyrics. As his career continued to develope, so did Tyler’s lyrics. Over the past 10+ years, Tyler has changed his rap from horrorcore style to melody-focused and jazz-fused sounds. The goal of this report to analyze the changes, if any, in Tyler, the Creator’s word sentiment and song quality.

The first step was to download the proper packages
library(tidyverse)
library(tidytext)
library(genius)
library(devtools)
library(wordcloud2)
library(tidyverse)
library(ggjoy)
library(spotifyr)
library(ggthemes)
library(readr)
library(rjson)
library(jsonlite)

install.packages(“jsonlite”)

Starting from oldest to newest, I analyzed the ten most used words, the sentiment of the words and a word cloud of Tyler, the Creator’s albums.

Goblin - 2011

pivot_wider(Goblin$tracks.song) -> goblin_tracks
pivot_wider(goblin_tracks) -> goblin_tracks2

goblin_tracks2 %>%
  unnest_tokens(word, lyrics) -> tyler_words_goblin
tyler_words_goblin %>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  inner_join(get_sentiments("bing")) %>% 
  inner_join(get_sentiments("afinn")) %>% 
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
## Joining, by = "word"
## Joining, by = "word"
word n sentiment value
fuck 183 negative -4
fucking 150 negative -4
bitch 115 negative -5
shit 98 negative -4
dick 53 negative -4
suck 33 negative -3
kill 29 negative -3
top 18 positive 2
hard 15 negative -1
love 13 positive 3
tyler_words_goblin %>%
  anti_join(stop_words) %>%
  count(word) %>%
  arrange(desc(n)) %>%
  wordcloud2()
## Joining, by = "word"
tyler_words_goblin%>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
word n
fuck 183
fucking 150
bitch 115
shit 98
wolf 77
nigga 69
tyler 67
gang 58
dick 53
verse 50

Wolf - 2013

pivot_wider(wolf$tracks.song) -> wolf_tracks
pivot_wider(wolf_tracks) -> wolf_tracks2

wolf_tracks2 %>%
  unnest_tokens(word, lyrics) -> tyler_words_wolf
tyler_words_wolf %>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  inner_join(get_sentiments("bing")) %>% 
  inner_join(get_sentiments("afinn")) %>% 
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
## Joining, by = "word"
## Joining, by = "word"
word n sentiment value
fuck 125 negative -4
fucking 75 negative -4
shit 61 negative -4
bitch 56 negative -5
love 21 positive 3
dick 17 negative -4
bad 12 negative -3
damn 11 negative -4
hate 10 negative -3
sick 10 negative -2
tyler_words_wolf %>%
  anti_join(stop_words) %>%
  count(word) %>%
  arrange(desc(n)) %>%
  wordcloud2()
## Joining, by = "word"
tyler_words_wolf%>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
word n
fuck 125
nigga 100
tyler 84
fucking 75
creator 73
shit 61
bitch 56
verse 55
yeah 52
golf 50

Cherry Bomb - 2015

pivot_wider(cherry$tracks.song) -> cherry_tracks
pivot_wider(cherry_tracks) -> cherry_tracks2


cherry_tracks2 %>%
  unnest_tokens(word, lyrics) -> tyler_words_cherry
tyler_words_cherry %>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  inner_join(get_sentiments("bing")) %>% 
  inner_join(get_sentiments("afinn")) %>% 
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
## Joining, by = "word"
## Joining, by = "word"
word n sentiment value
fuck 56 negative -4
shit 35 negative -4
fucking 34 negative -4
bomb 19 negative -1
bitch 14 negative -5
crash 10 negative -2
love 9 positive 3
favorite 6 positive 2
hard 6 negative -1
woo 6 positive 3
tyler_words_cherry %>%
  anti_join(stop_words) %>%
  count(word) %>%
  arrange(desc(n)) %>%
  wordcloud2()
## Joining, by = "word"
tyler_words_cherry%>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
word n
yeah 109
nigga 75
tyler 72
creator 62
fuck 56
niggas 40
verse 37
shit 35
fucking 34
o’s 28

Flower Boy - 2017

pivot_wider(flower$tracks.song) -> flower_tracks
pivot_wider(flower_tracks) -> flower_tracks2


flower_tracks2 %>%
  unnest_tokens(word, lyrics) -> tyler_words_flower
tyler_words_flower %>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  inner_join(get_sentiments("bing")) %>% 
  inner_join(get_sentiments("afinn")) %>% 
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
## Joining, by = "word"
## Joining, by = "word"
word n sentiment value
fuck 125 negative -4
fucking 75 negative -4
shit 61 negative -4
bitch 56 negative -5
love 21 positive 3
dick 17 negative -4
bad 12 negative -3
damn 11 negative -4
hate 10 negative -3
sick 10 negative -2
tyler_words_flower %>%
  anti_join(stop_words) %>%
  count(word) %>%
  arrange(desc(n)) %>%
  wordcloud2()
## Joining, by = "word"
tyler_words_flower%>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
word n
fuck 125
nigga 100
tyler 84
fucking 75
creator 73
shit 61
bitch 56
verse 55
yeah 52
golf 50

Igor - 2019

pivot_wider(igor$tracks.song) -> igor_tracks
pivot_wider(igor_tracks) -> igor_tracks2

igor_tracks2 %>%
  unnest_tokens(word, lyrics) -> tyler_words_igor
tyler_words_igor %>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  inner_join(get_sentiments("bing")) %>% 
  inner_join(get_sentiments("afinn")) %>% 
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
## Joining, by = "word"
## Joining, by = "word"
word n sentiment value
fuck 125 negative -4
fucking 75 negative -4
shit 61 negative -4
bitch 56 negative -5
love 21 positive 3
dick 17 negative -4
bad 12 negative -3
damn 11 negative -4
hate 10 negative -3
sick 10 negative -2
tyler_words_igor %>%
  anti_join(stop_words) %>%
  count(word) %>%
  arrange(desc(n)) %>%
  wordcloud2()
## Joining, by = "word"
tyler_words_igor%>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
word n
fuck 125
nigga 100
tyler 84
fucking 75
creator 73
shit 61
bitch 56
verse 55
yeah 52
golf 50

CALL ME IF YOU GET LOST - 2021

pivot_wider(call$tracks.song) -> call_tracks
pivot_wider(call_tracks) -> call_tracks2
call_tracks2 %>%
  unnest_tokens(word, lyrics) -> tyler_words_call
tyler_words_call %>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  inner_join(get_sentiments("bing")) %>% 
  inner_join(get_sentiments("afinn")) %>% 
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
## Joining, by = "word"
## Joining, by = "word"
word n sentiment value
shit 70 negative -4
fuck 50 negative -4
bitch 40 negative -5
lost 24 negative -3
woo 16 positive 3
love 15 positive 3
sweet 15 positive 2
crazy 10 negative -2
bad 9 negative -3
top 9 positive 2
tyler_words_call %>%
  anti_join(stop_words) %>%
  count(word) %>%
  arrange(desc(n)) %>%
  wordcloud2()
## Joining, by = "word"
tyler_words_call%>%
  select(word) %>%
  anti_join(stop_words) %>%
  count(word, sort = TRUE) %>%
  head(10) %>%
  knitr::kable()
## Joining, by = "word"
word n
yeah 118
tyler 89
creator 77
shit 70
run 68
nigga 55
dj 52
drama 51
fuck 50
gon 45

After exploring changes in Tyler, the Creator’s most common words, I want to see if there were any differences in the valence of his albums.

Since Genius did not have this information, I used my Spotify API access keys to download Tyler, the Creator data that would include the valence information.

tylerspot <- get_artist_audio_features('tyler the creator')
tylerspot$album_name
##   [1] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##   [3] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##   [5] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##   [7] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##   [9] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##  [11] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##  [13] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##  [15] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##  [17] "IGOR"                        "IGOR"                       
##  [19] "IGOR"                        "IGOR"                       
##  [21] "IGOR"                        "IGOR"                       
##  [23] "IGOR"                        "IGOR"                       
##  [25] "IGOR"                        "IGOR"                       
##  [27] "IGOR"                        "IGOR"                       
##  [29] "Flower Boy"                  "Flower Boy"                 
##  [31] "Flower Boy"                  "Flower Boy"                 
##  [33] "Flower Boy"                  "Flower Boy"                 
##  [35] "Flower Boy"                  "Flower Boy"                 
##  [37] "Flower Boy"                  "Flower Boy"                 
##  [39] "Flower Boy"                  "Flower Boy"                 
##  [41] "Flower Boy"                  "Flower Boy"                 
##  [43] "Cherry Bomb"                 "Cherry Bomb"                
##  [45] "Cherry Bomb"                 "Cherry Bomb"                
##  [47] "Cherry Bomb"                 "Cherry Bomb"                
##  [49] "Cherry Bomb"                 "Cherry Bomb"                
##  [51] "Cherry Bomb"                 "Cherry Bomb"                
##  [53] "Cherry Bomb"                 "Cherry Bomb"                
##  [55] "Cherry Bomb"                 "Cherry Bomb + Instrumentals"
##  [57] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [59] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [61] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [63] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [65] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [67] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [69] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [71] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [73] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [75] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [77] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [79] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [81] "Cherry Bomb + Instrumentals" "Live At Splash!"            
##  [83] "Live At Splash!"             "Live At Splash!"            
##  [85] "Live At Splash!"             "Live At Splash!"            
##  [87] "Live At Splash!"             "Live At Splash!"            
##  [89] "Live At Splash!"             "Live At Splash!"            
##  [91] "Live At Splash!"             "Live At Splash!"            
##  [93] "Live At Splash!"             "Live At Splash!"            
##  [95] "Live At Splash!"             "Live At Splash!"            
##  [97] "Live At Splash!"             "Live At Splash!"            
##  [99] "Live At Splash!"             "Live At Splash!"            
## [101] "Live At Splash!"             "Live At Splash!"            
## [103] "Live At Splash!"             "Live At Splash!"            
## [105] "Live At Splash!"             "Live At Splash!"            
## [107] "Live At Splash!"             "Live At Splash!"            
## [109] "Live At Splash!"             "Live At Splash!"            
## [111] "Live At Splash!"             "Live At Splash!"            
## [113] "Wolf"                        "Wolf"                       
## [115] "Wolf"                        "Wolf"                       
## [117] "Wolf"                        "Wolf"                       
## [119] "Wolf"                        "Wolf"                       
## [121] "Wolf"                        "Wolf"                       
## [123] "Wolf"                        "Wolf"                       
## [125] "Wolf"                        "Wolf"                       
## [127] "Wolf"                        "Wolf"                       
## [129] "Wolf"                        "Wolf"                       
## [131] "Goblin"                      "Goblin"                     
## [133] "Goblin"                      "Goblin"                     
## [135] "Goblin"                      "Goblin"                     
## [137] "Goblin"                      "Goblin"                     
## [139] "Goblin"                      "Goblin"                     
## [141] "Goblin"                      "Goblin"                     
## [143] "Goblin"                      "Goblin"                     
## [145] "Goblin"                      "Goblin"                     
## [147] "Goblin"                      "Goblin"                     
## [149] "Goblin"                      "Goblin"                     
## [151] "Goblin"                      "Goblin"                     
## [153] "Goblin"                      "Goblin"                     
## [155] "Goblin"                      "Goblin"                     
## [157] "Goblin"                      "Goblin"                     
## [159] "Goblin"                      "Goblin"                     
## [161] "Goblin"                      "Goblin"                     
## [163] "Goblin"                      "Goblin"                     
## [165] "Goblin"                      "Goblin"                     
## [167] "Goblin"                      "Goblin"                     
## [169] "Goblin"                      "Goblin"                     
## [171] "Goblin"                      "Goblin"                     
## [173] "Goblin"                      "Goblin"                     
## [175] "Goblin"                      "Goblin"                     
## [177] "Goblin"                      "Goblin"                     
## [179] "Goblin"                      "Goblin"                     
## [181] "Goblin"                      "Goblin"                     
## [183] "Goblin"                      "Goblin"                     
## [185] "Goblin"                      "Goblin"                     
## [187] "Goblin"                      "Goblin"                     
## [189] "Goblin"                      "Goblin"                     
## [191] "Goblin"                      "Goblin"                     
## [193] "Goblin"                      "Goblin"                     
## [195] "Goblin"                      "Goblin"
tylerspot$album_name
##   [1] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##   [3] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##   [5] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##   [7] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##   [9] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##  [11] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##  [13] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##  [15] "CALL ME IF YOU GET LOST"     "CALL ME IF YOU GET LOST"    
##  [17] "IGOR"                        "IGOR"                       
##  [19] "IGOR"                        "IGOR"                       
##  [21] "IGOR"                        "IGOR"                       
##  [23] "IGOR"                        "IGOR"                       
##  [25] "IGOR"                        "IGOR"                       
##  [27] "IGOR"                        "IGOR"                       
##  [29] "Flower Boy"                  "Flower Boy"                 
##  [31] "Flower Boy"                  "Flower Boy"                 
##  [33] "Flower Boy"                  "Flower Boy"                 
##  [35] "Flower Boy"                  "Flower Boy"                 
##  [37] "Flower Boy"                  "Flower Boy"                 
##  [39] "Flower Boy"                  "Flower Boy"                 
##  [41] "Flower Boy"                  "Flower Boy"                 
##  [43] "Cherry Bomb"                 "Cherry Bomb"                
##  [45] "Cherry Bomb"                 "Cherry Bomb"                
##  [47] "Cherry Bomb"                 "Cherry Bomb"                
##  [49] "Cherry Bomb"                 "Cherry Bomb"                
##  [51] "Cherry Bomb"                 "Cherry Bomb"                
##  [53] "Cherry Bomb"                 "Cherry Bomb"                
##  [55] "Cherry Bomb"                 "Cherry Bomb + Instrumentals"
##  [57] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [59] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [61] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [63] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [65] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [67] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [69] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [71] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [73] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [75] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [77] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [79] "Cherry Bomb + Instrumentals" "Cherry Bomb + Instrumentals"
##  [81] "Cherry Bomb + Instrumentals" "Live At Splash!"            
##  [83] "Live At Splash!"             "Live At Splash!"            
##  [85] "Live At Splash!"             "Live At Splash!"            
##  [87] "Live At Splash!"             "Live At Splash!"            
##  [89] "Live At Splash!"             "Live At Splash!"            
##  [91] "Live At Splash!"             "Live At Splash!"            
##  [93] "Live At Splash!"             "Live At Splash!"            
##  [95] "Live At Splash!"             "Live At Splash!"            
##  [97] "Live At Splash!"             "Live At Splash!"            
##  [99] "Live At Splash!"             "Live At Splash!"            
## [101] "Live At Splash!"             "Live At Splash!"            
## [103] "Live At Splash!"             "Live At Splash!"            
## [105] "Live At Splash!"             "Live At Splash!"            
## [107] "Live At Splash!"             "Live At Splash!"            
## [109] "Live At Splash!"             "Live At Splash!"            
## [111] "Live At Splash!"             "Live At Splash!"            
## [113] "Wolf"                        "Wolf"                       
## [115] "Wolf"                        "Wolf"                       
## [117] "Wolf"                        "Wolf"                       
## [119] "Wolf"                        "Wolf"                       
## [121] "Wolf"                        "Wolf"                       
## [123] "Wolf"                        "Wolf"                       
## [125] "Wolf"                        "Wolf"                       
## [127] "Wolf"                        "Wolf"                       
## [129] "Wolf"                        "Wolf"                       
## [131] "Goblin"                      "Goblin"                     
## [133] "Goblin"                      "Goblin"                     
## [135] "Goblin"                      "Goblin"                     
## [137] "Goblin"                      "Goblin"                     
## [139] "Goblin"                      "Goblin"                     
## [141] "Goblin"                      "Goblin"                     
## [143] "Goblin"                      "Goblin"                     
## [145] "Goblin"                      "Goblin"                     
## [147] "Goblin"                      "Goblin"                     
## [149] "Goblin"                      "Goblin"                     
## [151] "Goblin"                      "Goblin"                     
## [153] "Goblin"                      "Goblin"                     
## [155] "Goblin"                      "Goblin"                     
## [157] "Goblin"                      "Goblin"                     
## [159] "Goblin"                      "Goblin"                     
## [161] "Goblin"                      "Goblin"                     
## [163] "Goblin"                      "Goblin"                     
## [165] "Goblin"                      "Goblin"                     
## [167] "Goblin"                      "Goblin"                     
## [169] "Goblin"                      "Goblin"                     
## [171] "Goblin"                      "Goblin"                     
## [173] "Goblin"                      "Goblin"                     
## [175] "Goblin"                      "Goblin"                     
## [177] "Goblin"                      "Goblin"                     
## [179] "Goblin"                      "Goblin"                     
## [181] "Goblin"                      "Goblin"                     
## [183] "Goblin"                      "Goblin"                     
## [185] "Goblin"                      "Goblin"                     
## [187] "Goblin"                      "Goblin"                     
## [189] "Goblin"                      "Goblin"                     
## [191] "Goblin"                      "Goblin"                     
## [193] "Goblin"                      "Goblin"                     
## [195] "Goblin"                      "Goblin"
tylerspot %>%
  group_by(album_name) %>%
  filter(!album_name %in% c("Live At Splash!", "Cherry Bomb + Instrumentals")) -> tyler_filtered
tyler_filtered$album_name
##   [1] "CALL ME IF YOU GET LOST" "CALL ME IF YOU GET LOST"
##   [3] "CALL ME IF YOU GET LOST" "CALL ME IF YOU GET LOST"
##   [5] "CALL ME IF YOU GET LOST" "CALL ME IF YOU GET LOST"
##   [7] "CALL ME IF YOU GET LOST" "CALL ME IF YOU GET LOST"
##   [9] "CALL ME IF YOU GET LOST" "CALL ME IF YOU GET LOST"
##  [11] "CALL ME IF YOU GET LOST" "CALL ME IF YOU GET LOST"
##  [13] "CALL ME IF YOU GET LOST" "CALL ME IF YOU GET LOST"
##  [15] "CALL ME IF YOU GET LOST" "CALL ME IF YOU GET LOST"
##  [17] "IGOR"                    "IGOR"                   
##  [19] "IGOR"                    "IGOR"                   
##  [21] "IGOR"                    "IGOR"                   
##  [23] "IGOR"                    "IGOR"                   
##  [25] "IGOR"                    "IGOR"                   
##  [27] "IGOR"                    "IGOR"                   
##  [29] "Flower Boy"              "Flower Boy"             
##  [31] "Flower Boy"              "Flower Boy"             
##  [33] "Flower Boy"              "Flower Boy"             
##  [35] "Flower Boy"              "Flower Boy"             
##  [37] "Flower Boy"              "Flower Boy"             
##  [39] "Flower Boy"              "Flower Boy"             
##  [41] "Flower Boy"              "Flower Boy"             
##  [43] "Cherry Bomb"             "Cherry Bomb"            
##  [45] "Cherry Bomb"             "Cherry Bomb"            
##  [47] "Cherry Bomb"             "Cherry Bomb"            
##  [49] "Cherry Bomb"             "Cherry Bomb"            
##  [51] "Cherry Bomb"             "Cherry Bomb"            
##  [53] "Cherry Bomb"             "Cherry Bomb"            
##  [55] "Cherry Bomb"             "Wolf"                   
##  [57] "Wolf"                    "Wolf"                   
##  [59] "Wolf"                    "Wolf"                   
##  [61] "Wolf"                    "Wolf"                   
##  [63] "Wolf"                    "Wolf"                   
##  [65] "Wolf"                    "Wolf"                   
##  [67] "Wolf"                    "Wolf"                   
##  [69] "Wolf"                    "Wolf"                   
##  [71] "Wolf"                    "Wolf"                   
##  [73] "Wolf"                    "Goblin"                 
##  [75] "Goblin"                  "Goblin"                 
##  [77] "Goblin"                  "Goblin"                 
##  [79] "Goblin"                  "Goblin"                 
##  [81] "Goblin"                  "Goblin"                 
##  [83] "Goblin"                  "Goblin"                 
##  [85] "Goblin"                  "Goblin"                 
##  [87] "Goblin"                  "Goblin"                 
##  [89] "Goblin"                  "Goblin"                 
##  [91] "Goblin"                  "Goblin"                 
##  [93] "Goblin"                  "Goblin"                 
##  [95] "Goblin"                  "Goblin"                 
##  [97] "Goblin"                  "Goblin"                 
##  [99] "Goblin"                  "Goblin"                 
## [101] "Goblin"                  "Goblin"                 
## [103] "Goblin"                  "Goblin"                 
## [105] "Goblin"                  "Goblin"                 
## [107] "Goblin"                  "Goblin"                 
## [109] "Goblin"                  "Goblin"                 
## [111] "Goblin"                  "Goblin"                 
## [113] "Goblin"                  "Goblin"                 
## [115] "Goblin"                  "Goblin"                 
## [117] "Goblin"                  "Goblin"                 
## [119] "Goblin"                  "Goblin"                 
## [121] "Goblin"                  "Goblin"                 
## [123] "Goblin"                  "Goblin"                 
## [125] "Goblin"                  "Goblin"                 
## [127] "Goblin"                  "Goblin"                 
## [129] "Goblin"                  "Goblin"                 
## [131] "Goblin"                  "Goblin"                 
## [133] "Goblin"                  "Goblin"                 
## [135] "Goblin"                  "Goblin"                 
## [137] "Goblin"                  "Goblin"                 
## [139] "Goblin"
tyler_filtered %>%
  ggplot(aes(valence, album_name, fill = ..x..)) +
  geom_density_ridges_gradient()
## Picking joint bandwidth of 0.0877

After, looking at the valence between his albums, I wanted to see if energy, the dance ability, and tempo changed as well throughout his albums. Instead of doing song by song in each album, I imported the data into an Excel sheet and calculated the averages for each album. From there, I imported the averages into R Studio and used a heat map to analyze these qualities between albums. The heat maps code used were created by http://student.elon.edu/bwilliamson5/FinalProject/index.html

Tyler_averages <- read_csv("~/Documents/Tyler averages.csv")
## 
## ── Column specification ────────────────────────────────────────────────────────
## cols(
##   album = col_character(),
##   energy = col_double(),
##   danceiability = col_double(),
##   tempo = col_double()
## )
Tyler_averages %>%
  filter(album %in% c("Wolf", "Igor", "Goblin", "Flower Boy", "Cherry Bomb", "CALL ME IF YOU GET LOST")) -> tyler_avg_filtered

ggplot(data = tyler_avg_filtered, aes (x = energy, y = album))+
  geom_tile(aes(fill= energy, height=1 , width=.1),colour="red") +
  scale_y_discrete(breaks = Tyler_averages$album) +
  scale_fill_gradient2(low = "#33F0FF", midpoint=0.6,
                       space="Lab", mid="#339FFF", high = "#333CFF") +
  labs(x = "Energy") +
  labs(y = "Album Name") +
  labs(title = "Average Energy in Tyler, the Creator's Albums")

ggplot(data = tyler_avg_filtered, aes (x = danceiability, y = album))+
  geom_tile(aes(fill= danceiability, height=1 , width=.1),colour="red") +
  scale_y_discrete(breaks = tyler_avg_filtered$album) +
  scale_fill_gradient2(low = "#33F0FF", midpoint=0.6,
                       space="Lab", mid="#339FFF", high = "#333CFF") +
  labs(x = "Dance ability") +
  labs(y = "Album Name") +
  labs(title = "Average Dance Ability in Tyler, the Creator's Albums")

ggplot(data = tyler_avg_filtered, aes (x = tempo, y = album))+
  geom_tile(aes(fill= tempo, height=1 , width=.1),colour="red") +
  scale_y_discrete(breaks = tyler_avg_filtered$album) +
  scale_fill_gradient2(low = "#33F0FF", midpoint=0.6,
                       space="Lab", mid="#339FFF", high = "#333CFF") +
  labs(x = "Tempo") +
  labs(y = "Album Name") +
  labs(title = "Average Tempo in Tyler, the Creator's Albums")

Conclusion

The lyrics over Tyler, the Creator’s career have drastically changed. In his early albums, Tyler’s word clouds were filled with curse words. As more albums came out, the number of curse words started to decrease and more positive sentiment words started to replace the curse words. One reason for this is Tyler started his career filling his songs with homophobic and hateful lyrics. Then with the release of Flower Boy, Tyler admitted to being bisexual which changed his lyrics completely. With his identity changing, it changed his music for the positive as well.

The energy, dance ability and tempo has no correlation to his albums. Each album varied in their results and did not show a change throughout his career. This was expected due to the nature of each album and song being completely different from one another.