The data has been collected through Last.fm service. Below you can find descriptions for the relevant data files. File descriptions user_artist_matrix_with_nans.mat - matrix in Matlab format where each row corresponds to one user (total of 1372 users) and each column to one artist (total of 4322 artists). Value (i,j) is the number of different songs user i has listened to from artist j. The matrix contains 35021 missing 'NaN' values for which you are expected to provide 0/1 recommendations. Predicted value 1 means that the user has listened to at least one song from the artist. user_artist_matrix_with_nans.csv - the same as above but in csv format. Missing values are denoted by '?'. metadata.mat - supplemental information about the artists (using this data is optional). When you load this file into Matlab you'll get the following variables artist_names - cell array of all artist names. These are in the same order as the columns in the user-artist matrix. artist_tagId_mat - tag information (e.g. 'indie', 'jazz', 'rock', etc.) for each artist. Value (i,j) is weight of tag j for artist i. The weights in each row sum up to one. tag_names - cell array of tag names in the same order as the columns in the artist-tagId matrix appear. sampleSubmission.csv - a sample submission file in the correct format. prepare_submission.m - Matlab code which loads the matrix and generates a submission file with random predictions in the correct format.