library(readr)
data <- read.csv("SpotifyTopSongsByCountry - May 2020.csv")
# Preview the first 5 rows
head(data, 5)
## Country Continent Rank Title
## 1 Global Global 1 Rain On Me (with Ariana Grande)
## 2 Global Global 2 Blinding Lights
## 3 Global Global 3 ROCKSTAR (feat. Roddy Ricch)
## 4 Global Global 4 Roses - Imanbek Remix
## 5 Global Global 5 Toosie Slide
## Artists Album Explicit Duration
## 1 Lady Gaga, Ariana Grande Rain On Me (with Ariana Grande) 0 3:02
## 2 The Weeknd After Hours 0 3:20
## 3 DaBaby, Roddy Ricch BLAME IT ON BABY 1 3:01
## 4 SAINt JHN, Imanbek Roses (Imanbek Remix) 1 2:56
## 5 Drake Dark Lane Demo Tapes 1 4:07
# View the structure of the data
print("--- Data Structure ---")
## [1] "--- Data Structure ---"
str(data)
## 'data.frame': 3150 obs. of 8 variables:
## $ Country : chr "Global" "Global" "Global" "Global" ...
## $ Continent: chr "Global" "Global" "Global" "Global" ...
## $ Rank : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Title : chr "Rain On Me (with Ariana Grande)" "Blinding Lights" "ROCKSTAR (feat. Roddy Ricch)" "Roses - Imanbek Remix" ...
## $ Artists : chr "Lady Gaga, Ariana Grande" "The Weeknd" "DaBaby, Roddy Ricch" "SAINt JHN, Imanbek" ...
## $ Album : chr "Rain On Me (with Ariana Grande)" "After Hours" "BLAME IT ON BABY" "Roses (Imanbek Remix)" ...
## $ Explicit : int 0 0 1 1 1 0 1 0 0 0 ...
## $ Duration : chr "3:02" "3:20" "3:01" "2:56" ...
#print("--- Summary Statistics ---")
summary(data)
## Country Continent Rank Title
## Length:3150 Length:3150 Min. : 1.0 Length:3150
## Class :character Class :character 1st Qu.:13.0 Class :character
## Mode :character Mode :character Median :25.5 Mode :character
## Mean :25.5
## 3rd Qu.:38.0
## Max. :50.0
## Artists Album Explicit Duration
## Length:3150 Length:3150 Min. :0.0000 Length:3150
## Class :character Class :character 1st Qu.:0.0000 Class :character
## Mode :character Mode :character Median :0.0000 Mode :character
## Mean :0.3489
## 3rd Qu.:1.0000
## Max. :1.0000