Los paquetes que utilizaremos son los siguientes:
Introducción
Taylor Swift es una de las artistas más influyentes de la música contemporánea. Desde sus inicios en el género country hasta convertirse en una estrella global del pop, Swift ha demostrado ser una figura versátil y visionaria. Este trabajo tiene como objetivo explorar su vida, su carrera, y el impacto que ha tenido en la música y la cultura global.
Reproductor de Spotify
Puedes escuchar una tranquila cancion de Taylor Swift mientras lees este trabajo:
Empezamos de la mano de Tay - Tay
VAMOS A EMPEZAR CON EL TRABAJO
Vamos a ver una variedad de cosas, desde un analisis de las letras de sus canciones, hasta las ubicaciones del famoso ERAS TOUR en todo el mundo… Asi que nos ponemos manos a la obra
Frecuencia de palabras
El gráfico que presento a continuación muestra la frecuencia de palabras en todas las canciones de Taylor Swift, sin distinción entre álbumes. Este análisis permite observar las palabras más recurrentes a lo largo de su carrera, proporcionando una visión global de los temas y las emociones que han sido clave en su música a lo largo de los años.
Primero un grafico que cuenta las 30 palabras mas frecuente entre todas sus canciones. Luego los visualizaremos de otras maneras
Ggplot
Código
lyrics <- rio::import(here::here("datos", "Lyrics.csv"))
lyrics_tidy <- lyrics %>%
unnest_tokens(word, lyric) %>%
anti_join(stop_words) %>%
count(word, sort = TRUE)
lyrics_tidy %>%
top_n(30) %>% # Seleccionamos las 20 palabras más frecuentes
ggplot(aes(x = reorder(word, n), y = n)) + # Reordenamos las palabras por frecuencia
geom_bar(stat = "identity", fill = "#CC99BB") + # Creamos las barras
coord_flip() + # Giramos las barras para mejorar la legibilidad
labs(title = "Las 20 palabras más frecuentes en las letras de Taylor Swift",
x = "Palabra",
y = "Frecuencia") +
theme_minimal()
Treemap
Código
lyrics_p <- lyrics_tidy %>%
rename(frecuencia = n) %>%
slice_max(order_by = frecuencia, n = 50)
colors <- c("#bc4749",
"#9f86c0",
"#6a040f",
"#f72585",
"#4361ee",
"#C3B377",
"#8449BB",
"#bc6c25",
"#526D85",
"#994914",
"#6f1d1b")
treemap_taylor <- treemap(lyrics_p,
index="word",
vSize= "frecuencia",
title="Palabras en las canciones de Taylor",
palette=colors,
border.col=c("white"),
border.lwds=1 ,
fontface.labels=3,
bg.labels=c("transparent"),
align.labels=c("center", "center"),
overlap.labels=0.5)
Nube de palabras
Este es un grafico interactivo, por lo que, al colocar el cursor encima de la palabras, nos dirá cuantas veces se repite.
Código
Album por album
Haremos una parada por los albumes especificos: Folklore, 1989 y Reputation, por la simple razon de que son mis favoritos, y en cada parada, veremos una imagen de Taylor interpretando dicho album durante el Eras Tour (en el que cambia su vestuario y escenografia en cada album, para entrar en diferentes atmosferas)
Los gráficos de frecuencia de palabras permiten visualizar estos patrones de forma clara. Al examinar las palabras más recurrentes, podemos detectar las diferencias entre las eras musicales de Taylor Swift y cómo su estilo lírico ha cambiado y madurado a lo largo de los años.
Folklore
Lanzado durante la pandemia, se adentra en un sonido más indie y alternativo, alejado del pop que había caracterizado sus álbumes anteriores. Explora temas de amor, nostalgia y narrativa ficticia. Ganó el premio Grammy a Álbum del Año en 2021.
Durante el Eras Tour, Taylor interpreta canciones de Folklore en un escenario inspirado en bosques encantados, destacando la atmósfera mágica del álbum.
1989
1989 es el álbum que consolidó a Taylor Swift como una superestrella global del pop. Inspirado en la música de los años 80. Este álbum fue un fenómeno cultural y ganó el Grammy a Álbum del Año en 2016. Su transición al pop fue respaldada por una producción impecable y letras que exploran temas de independencia, romance y autoafirmación. En el Eras Tour, Taylor revive la energía vibrante de 1989 con actuaciones llenas de luces brillantes y coreografías dinámicas.
Reputation
Reputation es un álbum que muestra a Taylor Swift explorando un lado más oscuro y audaz de su música. Este álbum aborda el concepto de redención y renacimiento en medio del escrutinio público. La producción es más electrónica y pesada, reflejando una era de empoderamiento. Durante el Eras Tour, sus actuaciones de Reputation son visualmente impactantes, con elementos de iluminación dramática y una energía desafiante.
Código
reputation <- lyrics %>%
filter(album_name == "reputation")
reputation_p <- reputation %>%
unnest_tokens(word, lyric) %>%
anti_join(stop_words) %>% # Eliminamos las palabras vacías usando stop_words
count(word, sort = TRUE)
reputation_p %>%
with(wordcloud(word, n, max.words = 100, colors = "#363636"))
EL ERAS TOUR
Empezó el 17 de marzo de 2023 y termino el 8 de diciembre de 2024, hace solo unas semanas.
Un concierto de 3 horas y media de duracion que abarcaba todos los albumes de la artista (11), con una seccion acustica con canciones sorpresas, preparando cada “era” con su tematica acompañada por una impresionante escenografia, vestuario exclusivo diseñado por los mejores diseñadores, coreografias, actuacion, produccion, todo impecable e impresionante… que se trasladó por 44 ciudades de mundo y en muchas de ellas hizo 2, 3 o mas presentaciones.
Código
CIUDADES_ERAS_USA <- data.frame(
nombre = c("Glendale", "Las Vegas", "Arlington", "Tampa", "Houston",
"Atlanta", "Nashville", "Philadelphia", "Foxborough", "East Rutherford",
"Chicago", "Detroit", "Pittsburgh", "Minneapolis", "Cincinnati",
"Kansas City", "Denver", "Seattle", "Santa Clara", "Inglewood"),
longitude = c(-112.1860, -115.1398, -97.1081, -82.4572, -95.3698,
-84.3880, -86.7816, -75.1652, -71.2478, -74.0972,
-87.6298, -83.0458, -79.9959, -93.2650, -84.5120,
-94.5786, -104.9903, -122.3321, -121.9552, -118.3531),
latitude = c(33.5387, 36.1699, 32.7357, 27.9506, 29.7604,
33.7490, 36.1627, 39.9526, 42.0654, 40.8330,
41.8781, 42.3314, 40.4406, 44.9778, 39.1031,
39.0997, 39.7392, 47.6062, 37.3541, 33.9617))
CIUDADES_MUNDO <- data.frame(
nombre = c("Ciudad de México", "Monterrey", "Buenos Aires", "Río de Janeiro", "São Paulo",
"Edimburgo", "Liverpool", "Cardiff", "Dublín", "Ámsterdam", "Zúrich",
"Milán", "Lyon", "París", "Madrid", "Viena", "Hamburgo", "Múnich",
"Varsovia", "Tokio", "Sídney", "Melbourne", "Brisbane", "Perth"),
longitude = c(-99.1332, -100.3161, -58.3816, -43.1729, -46.6333,
-3.1883, -2.9785, -3.1791, -6.2603, 4.9041, 8.5417,
9.1919, 4.8357, 2.3522, -3.7038, 16.3738, 9.9937,
11.5820, 21.0122, 139.6917, 151.2093, 144.9631,
153.0251, 115.8605),
latitude = c(19.4326, 25.6866, -34.6037, -22.9068, -23.5505,
55.9533, 53.4084, 51.4816, 53.3498, 52.3676, 47.3769,
45.4642, 45.7640, 48.8566, 40.4168, 48.2082, 53.5511,
48.1351, 52.2297, 35.6895, -33.8688, -37.8136,
-27.4698, -31.9505))
# Unir los dataframes CIUDADES_ERAS_USA y CIUDADES_MUNDO
CIUDADES_UNIDAS <- rbind(CIUDADES_ERAS_USA, CIUDADES_MUNDO)
# Convertir a objeto sf
eras_cities_mundo_sf <- st_as_sf(CIUDADES_UNIDAS,
coords = c("longitude", "latitude"),
crs = 4326) # WGS84
# Crear un mapa interactivo
mapa_eras <- leaflet() %>%
addTiles() %>% # Agregar capa base de OpenStreetMap
# Agregar las ciudades
addCircleMarkers(data = CIUDADES_UNIDAS,
radius = 5, # Tamaño de los puntos
color = "blue", # Color de los puntos
stroke = FALSE, # Sin bordes
fillOpacity = 0.8, # Opacidad de relleno
popup = ~nombre) %>% # Popup con nombre de ciudad
# Añadir leyenda
addLegend(position = "bottomright",
colors = c("blue"),
labels = c("Ciudades donde estuvo el ERAS TOUR"))
# Guardar el mapa como archivo HTML
saveWidget(mapa_eras, "mapa_eras_tour.html")
A continuación, se presenta un mapa interactivo que muestra las ciudades visitadas durante el Eras Tour. Este mapa destaca la amplitud global de la gira y cómo Taylor Swift ha llegado a audiencias en todo el mundo.
ESTA PAGINA NO SOPORTA EL GRAFICO, POR LO QUE DEBES VISUALIZARLO EN EL SIGUIENTE ENLACE, pincha aquí.
————————————————————————–
Analisis de sus canciones
Relacion entre popularidad y energia
Código
library(ggplot2)
tt <- rio::import(here::here("datos", "taylor_swift_spotify.xlsx"))
palette <- c('#e87e8b', '#d76477', '#c04b63', '#a8364f', '#8f203b')
# Crear un gráfico de dispersión para Popularidad vs Energía
ggplot(tt, aes(x = energy, y = popularity, color = popularity)) +
geom_point(alpha = 0.6) +
scale_color_gradientn(colors = palette) +
labs(
title = 'Relación entre Popularidad y Energía de las Canciones',
x = 'Energía',
y = 'Popularidad',
color = 'Popularidad'
) +
theme_minimal()
Con este grafico podemos interpretar que no hay relacion entre la energia y la popularidad, ya que no vemos una relacion positiva en el grafico.
Esto es de esperarse ya que Taylor Swift tiene una gran variedad de generos en su repertorio, empezó cantando country, luego fue evolucionando y explorando generos como el pop, el indie, etc.
Por lo que no, no es simplemente una famosa cantante pop, lo que hace su trabajo aun mas impresionante.
Canciones mas populares
Código
# Seleccionar las 10 canciones más populares
top_10_popular <- tt %>%
arrange(desc(popularity)) %>%
select(name, album, popularity, duration_ms) %>%
mutate(duration_min = round(duration_ms / 60000, 2)) %>%
select(-duration_ms) %>%
head(10)
# Mostrar la tabla en formato bonito con colores
kable(top_10_popular, caption = 'Top 10 Canciones Más Populares') %>%
kable_styling(bootstrap_options = c('striped', 'hover', 'condensed', 'responsive'), full_width = F) %>%
row_spec(0, bold = TRUE, color = 'white', background = '#b34455') %>% # Encabezado en rojo oscuro
row_spec(1:nrow(top_10_popular), background = '#fbeaea') # Filas con fondo rosa claro
name | album | popularity | duration_min |
---|---|---|---|
Cruel Summer | Lover | 99 | 2.97 |
Is It Over Now? (Taylor's Version) (From The Vault) | 1989 (Taylor's Version) | 94 | 3.82 |
Anti-Hero | Midnights | 92 | 3.34 |
Lover | Lover | 92 | 3.69 |
Now That We Don't Talk (Taylor's Version) (From The Vault) | 1989 (Taylor's Version) | 91 | 2.44 |
august | folklore | 91 | 4.37 |
Don’t Blame Me | reputation | 91 | 3.94 |
"Slut!" (Taylor's Version) (From The Vault) | 1989 (Taylor's Version) | 90 | 3.01 |
cardigan | folklore | 90 | 3.99 |
Style (Taylor's Version) | 1989 (Taylor's Version) | 89 | 3.85 |
Positividad emocional y “danceability” (el grado en que se puede bailar?)
En el contexto de las características musicales proporcionadas por Spotify, valence es una métrica que mide la positividad emocional percibida en una pista, pero no necesariamente significa felicidad en el sentido literal.
Código
library(ggplot2)
ggplot(tt, aes(x = danceability, y = valence, size = popularity, color = popularity)) +
geom_point(alpha = 0.6) +
scale_color_gradientn(colors = palette) +
labs(
title = 'Relación entre Valence (Felicidad) y Danceability',
x = 'Danceability',
y = 'Valence',
size = 'Popularidad',
color = 'Popularidad'
) +
theme_minimal()
Este gráfico muestra cómo las canciones de Taylor Swift varían en términos de qué tan felices o positivas se sienten (valence) y qué tan fáciles son para bailar (danceability). Cada burbuja representa una canción, y su tamaño y color indican qué tan popular es. Se nota que la mayoría de las canciones están en un rango medio de felicidad y bailabilidad, lo que sugiere que las canciones más equilibradas en estas características tienden a ser más populares. También se ve que las canciones menos populares están en los extremos, ya sea porque son muy tristes o poco bailables. En general, parece que las canciones que combinan un buen ritmo con un tono positivo son las que más conectan con el público.
Con esto acabo mi trabajo para BigData, espero que os haya gustado!!
Información sobre la sesión
Abajo muestro mi entorno de trabajo y paquetes utilizados
sessioninfo::session_info() %>% details::details(summary = ‘current session info’)