IDBootcamps-Sound-Dynamics-A

The most dynamic way to search for and compare music

alt text

 

1. Project Description

the what, the why, and the how of the project.

What?

The aim of the project is to create an application that combines ETL with data analysis to discover and/or compare musical artists.

In this phase, a Python package has been developed capable of reading the data, preparing it for analysis, calculating basic statistics and finally, creating visualisations to discover similarities between different artists.

Why?

We are 3 friends, music and coder fans, who are constantly looking for new artists and musical experiences, so not finding our own tool in use and functionality, we decided to develop our own, and we want to put at the service of the ID community this tool to discover through the analysis of similarities new musical artists and experiment together.

How?

You can dive into this tool and discover new artists by comparing by similarity the following 12 audio features:

  1. danceability
  2. energy
  3. key
  4. loudness
  5. mode
  6. speechiness
  7. acousticness
  8. instrumentalness
  9. liveness
  10. valence
  11. tempo
  12. time_signature

 

2. How to Install and Run the Project

To fully enjoy the Sound Dynamics tool please download and install the libraries mentioned in the following attached file: requirements.txt

To enjoy the experience of this tool we highly recommend to run the complete file running each file call tareaN.py

 

3. How to use the Project

This phase was developed in 8 tasks which are described below,

  • tarea1.py: read a CSV file in zip format and convert it to a denormalised dataframe.
  • tarea2.py: function allowing to visually measure and compare the average execution time of all functions on all files given a number of repetitions.
  • tarea3.py: various analyses applied to the dataframe read in tarea1.py.
  • tarea4.py: various more advanced analyses applied to the dataframe read in tarea1.py.
  • tarea5.py: function to visualise through a histogram the audio feature of a selected artist.
  • tarea6.py: function to visually compare the audio features of two artists.
  • tarea7.py: function to visually compare visually using as a measure the normalised similarity - Eucledian or Cosine - of all audio features of X selected artists.
  • tarea8.py: external API calls.

 

4. Credits

Francesco Esposito as https://github.com/lupon1 GitHub followers
Ainhoa Molina Maroto as https://github.com/adinhodi GitHub followers
Sebastian Oberti as https://github.com/SebastianOberti GitHub followers

 

5. License

Copyright © 2021 MIT License.
The computer software is licensed under the MIT license.
For further details please refer to the attached file LICENSE.txt

 

6. Contributing

Sound Dynamics A is possible thanks to IDBootcamps. We welcome all contributions to the community and are excited to welcome you aboard. If you find a bug and have confirmed that someone else is facing the same issue, go ahead and create a new GitHub issue. Be sure to include as much information as possible so we can reproduce the bug.