This is an R Markdown Notebook. When you execute code within the notebook, the results appear beneath the code.

Try executing this chunk by clicking the Run button within the chunk or by placing your cursor inside it and pressing Ctrl+Shift+Enter.

plot(cars)

Add a new chunk by clicking the Insert Chunk button on the toolbar or by pressing Ctrl+Alt+I.

When you save the notebook, an HTML file containing the code and output will be saved alongside it (click the Preview button or press Ctrl+Shift+K to preview the HTML file).

The preview shows you a rendered HTML copy of the contents of the editor. Consequently, unlike Knit, Preview does not run any R code chunks. Instead, the output of the chunk when it was last run in the editor is displayed.

# Import the CSV file
data <- read_csv("dataset.csv")
New names:Rows: 114000 Columns: 21── Column specification ───────────────────────────────────────────────────────────────────────────────────────
Delimiter: ","
chr  (5): track_id, artists, album_name, track_name, track_genre
dbl (15): ...1, popularity, duration_ms, danceability, energy, key, loudness, mode, speechiness, acousticne...
lgl  (1): explicit
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
# Display the first few rows of the data
head(data)
# Display column names and types
str(data)
spc_tbl_ [114,000 × 21] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
 $ ...1            : num [1:114000] 0 1 2 3 4 5 6 7 8 9 ...
 $ track_id        : chr [1:114000] "5SuOikwiRyPMVoIQDJUgSV" "4qPNDBW1i3p13qLCt0Ki3A" "1iJBSr7s7jYXzM8EGcbK5b" "6lfxq3CG4xtTiEg7opyCyx" ...
 $ artists         : chr [1:114000] "Gen Hoshino" "Ben Woodward" "Ingrid Michaelson;ZAYN" "Kina Grannis" ...
 $ album_name      : chr [1:114000] "Comedy" "Ghost (Acoustic)" "To Begin Again" "Crazy Rich Asians (Original Motion Picture Soundtrack)" ...
 $ track_name      : chr [1:114000] "Comedy" "Ghost - Acoustic" "To Begin Again" "Can't Help Falling In Love" ...
 $ popularity      : num [1:114000] 73 55 57 71 82 58 74 80 74 56 ...
 $ duration_ms     : num [1:114000] 230666 149610 210826 201933 198853 ...
 $ explicit        : logi [1:114000] FALSE FALSE FALSE FALSE FALSE FALSE ...
 $ danceability    : num [1:114000] 0.676 0.42 0.438 0.266 0.618 0.688 0.407 0.703 0.625 0.442 ...
 $ energy          : num [1:114000] 0.461 0.166 0.359 0.0596 0.443 0.481 0.147 0.444 0.414 0.632 ...
 $ key             : num [1:114000] 1 1 0 0 2 6 2 11 0 1 ...
 $ loudness        : num [1:114000] -6.75 -17.23 -9.73 -18.52 -9.68 ...
 $ mode            : num [1:114000] 0 1 1 1 1 1 1 1 1 1 ...
 $ speechiness     : num [1:114000] 0.143 0.0763 0.0557 0.0363 0.0526 0.105 0.0355 0.0417 0.0369 0.0295 ...
 $ acousticness    : num [1:114000] 0.0322 0.924 0.21 0.905 0.469 0.289 0.857 0.559 0.294 0.426 ...
 $ instrumentalness: num [1:114000] 1.01e-06 5.56e-06 0.00 7.07e-05 0.00 0.00 2.89e-06 0.00 0.00 4.19e-03 ...
 $ liveness        : num [1:114000] 0.358 0.101 0.117 0.132 0.0829 0.189 0.0913 0.0973 0.151 0.0735 ...
 $ valence         : num [1:114000] 0.715 0.267 0.12 0.143 0.167 0.666 0.0765 0.712 0.669 0.196 ...
 $ tempo           : num [1:114000] 87.9 77.5 76.3 181.7 119.9 ...
 $ time_signature  : num [1:114000] 4 4 4 3 4 4 3 4 4 4 ...
 $ track_genre     : chr [1:114000] "acoustic" "acoustic" "acoustic" "acoustic" ...
 - attr(*, "spec")=
  .. cols(
  ..   ...1 = col_double(),
  ..   track_id = col_character(),
  ..   artists = col_character(),
  ..   album_name = col_character(),
  ..   track_name = col_character(),
  ..   popularity = col_double(),
  ..   duration_ms = col_double(),
  ..   explicit = col_logical(),
  ..   danceability = col_double(),
  ..   energy = col_double(),
  ..   key = col_double(),
  ..   loudness = col_double(),
  ..   mode = col_double(),
  ..   speechiness = col_double(),
  ..   acousticness = col_double(),
  ..   instrumentalness = col_double(),
  ..   liveness = col_double(),
  ..   valence = col_double(),
  ..   tempo = col_double(),
  ..   time_signature = col_double(),
  ..   track_genre = col_character()
  .. )
 - attr(*, "problems")=<externalptr> 
#Verify
class(data)
#Re-naming
my_data <- data
my_data $ music_genre
data $ music_genre

# Summarizing Categorical Column (track_genre)
genre_summary <- table(data[["track_genre"]])
genre_summary <- sort(genre_summary, decreasing = TRUE)
print(genre_summary)
LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpUaGlzIGlzIGFuIFtSIE1hcmtkb3duXShodHRwOi8vcm1hcmtkb3duLnJzdHVkaW8uY29tKSBOb3RlYm9vay4gV2hlbiB5b3UgZXhlY3V0ZSBjb2RlIHdpdGhpbiB0aGUgbm90ZWJvb2ssIHRoZSByZXN1bHRzIGFwcGVhciBiZW5lYXRoIHRoZSBjb2RlLiANCg0KVHJ5IGV4ZWN1dGluZyB0aGlzIGNodW5rIGJ5IGNsaWNraW5nIHRoZSAqUnVuKiBidXR0b24gd2l0aGluIHRoZSBjaHVuayBvciBieSBwbGFjaW5nIHlvdXIgY3Vyc29yIGluc2lkZSBpdCBhbmQgcHJlc3NpbmcgKkN0cmwrU2hpZnQrRW50ZXIqLiANCg0KYGBge3J9DQpwbG90KGNhcnMpDQpgYGANCg0KQWRkIGEgbmV3IGNodW5rIGJ5IGNsaWNraW5nIHRoZSAqSW5zZXJ0IENodW5rKiBidXR0b24gb24gdGhlIHRvb2xiYXIgb3IgYnkgcHJlc3NpbmcgKkN0cmwrQWx0K0kqLg0KDQpXaGVuIHlvdSBzYXZlIHRoZSBub3RlYm9vaywgYW4gSFRNTCBmaWxlIGNvbnRhaW5pbmcgdGhlIGNvZGUgYW5kIG91dHB1dCB3aWxsIGJlIHNhdmVkIGFsb25nc2lkZSBpdCAoY2xpY2sgdGhlICpQcmV2aWV3KiBidXR0b24gb3IgcHJlc3MgKkN0cmwrU2hpZnQrSyogdG8gcHJldmlldyB0aGUgSFRNTCBmaWxlKS4NCg0KVGhlIHByZXZpZXcgc2hvd3MgeW91IGEgcmVuZGVyZWQgSFRNTCBjb3B5IG9mIHRoZSBjb250ZW50cyBvZiB0aGUgZWRpdG9yLiBDb25zZXF1ZW50bHksIHVubGlrZSAqS25pdCosICpQcmV2aWV3KiBkb2VzIG5vdCBydW4gYW55IFIgY29kZSBjaHVua3MuIEluc3RlYWQsIHRoZSBvdXRwdXQgb2YgdGhlIGNodW5rIHdoZW4gaXQgd2FzIGxhc3QgcnVuIGluIHRoZSBlZGl0b3IgaXMgZGlzcGxheWVkLg0KDQoNCmBgYHtyfQ0KIyBJbXBvcnQgdGhlIENTViBmaWxlDQpkYXRhIDwtIHJlYWRfY3N2KCJkYXRhc2V0LmNzdiIpDQojIERpc3BsYXkgdGhlIGZpcnN0IGZldyByb3dzIG9mIHRoZSBkYXRhDQpoZWFkKGRhdGEpDQpgYGANCmBgYHtyfQ0KIyBEaXNwbGF5IGNvbHVtbiBuYW1lcyBhbmQgdHlwZXMNCnN0cihkYXRhKQ0KdHlwZW9mKGRhdGEpDQpgYGANCg0KDQpgYGB7cn0NCiNWZXJpZnkNCmNsYXNzKGRhdGEpDQpgYGANCg0KDQpgYGB7cn0NCiNSZS1uYW1pbmcNCm15X2RhdGEgPC0gZGF0YQ0KbXlfZGF0YSAkIG11c2ljX2dlbnJlDQoNCmBgYA0KDQoNCmBgYHtyfQ0KZGF0YSAkIG11c2ljX2dlbnJlDQoNCiMgU3VtbWFyaXppbmcgQ2F0ZWdvcmljYWwgQ29sdW1uICh0cmFja19nZW5yZSkNCmdlbnJlX3N1bW1hcnkgPC0gdGFibGUoZGF0YVtbInRyYWNrX2dlbnJlIl1dKQ0KZ2VucmVfc3VtbWFyeSA8LSBzb3J0KGdlbnJlX3N1bW1hcnksIGRlY3JlYXNpbmcgPSBUUlVFKQ0KcHJpbnQoZ2VucmVfc3VtbWFyeSkNCg0KDQoNCmBgYA0K