comparison tests/test_load_features.py @ 43:b1d9ba5f888e branch-tests

debugging tests
author Maria Panteli <m.x.panteli@gmail.com>
date Fri, 15 Sep 2017 16:17:55 +0100
parents c4428589b82b
children 3ed4c6af5a93
comparison
equal deleted inserted replaced
41:57f53b0d1eaa 43:b1d9ba5f888e
12 import pandas as pd 12 import pandas as pd
13 import scripts.load_features as load_features 13 import scripts.load_features as load_features
14 14
15 feat_loader = load_features.FeatureLoader(win2sec=8) 15 feat_loader = load_features.FeatureLoader(win2sec=8)
16 16
17 #TEST_METADATA_FILE = '../data/sample_dataset/metadata.csv'
18 TEST_METADATA_FILE = os.path.join(os.path.dirname(__file__), os.path.pardir,
19 'data', 'sample_dataset', 'metadata.csv')
20 #TEST_METADATA_FILE = 'data/sample_dataset/metadata.csv'
21 #TEST_MELODIA_FILE = 'data/sample_dataset/Melodia/mel_1_2_1.csv'
22 TEST_MELODIA_FILE = os.path.join(os.path.dirname(__file__), os.path.pardir,
23 'data', 'sample_dataset', 'Melodia', 'mel_1_2_1.csv')
17 24
18 def test_get_music_idx_from_bounds(): 25 def test_get_music_idx_from_bounds():
19 bounds = np.array([['0', '10.5', 'm']]) 26 bounds = np.array([['0', '10.5', 'm']])
20 sr = feat_loader.framessr2 27 sr = feat_loader.framessr2
21 music_bounds = feat_loader.get_music_idx_from_bounds(bounds, sr=sr) 28 music_bounds = feat_loader.get_music_idx_from_bounds(bounds, sr=sr)
211 pbihist = feat_loader.get_pb_for_file('') 218 pbihist = feat_loader.get_pb_for_file('')
212 assert np.array_equal(pbihist, []) 219 assert np.array_equal(pbihist, [])
213 220
214 221
215 def test_get_pb_for_file_n_bins(): 222 def test_get_pb_for_file_n_bins():
216 pbihist = feat_loader.get_pb_for_file('data/sample_dataset/Melodia/mel_1_2_1.csv', nmfpb=False, scale=False) 223 pbihist = feat_loader.get_pb_for_file(TEST_MELODIA_FILE, nmfpb=False, scale=False)
217 assert pbihist.shape[1] == 3600 224 assert pbihist.shape[1] == 3600
218 225
219 226
220 def test_get_pb_for_file_align(): 227 def test_get_pb_for_file_align():
221 pbihist = feat_loader.get_pb_for_file('data/sample_dataset/Melodia/mel_1_2_1.csv', nmfpb=False, scale=False) 228 pbihist = feat_loader.get_pb_for_file(TEST_MELODIA_FILE, nmfpb=False, scale=False)
222 pbihist = pbihist.get_values() 229 pbihist = pbihist.get_values()
223 assert np.sum(pbihist[:, :60].ravel()) > np.sum(pbihist[:, 60:120].ravel()) 230 assert np.sum(pbihist[:, :60].ravel()) > np.sum(pbihist[:, 60:120].ravel())
224 231
225 232
226 def test_get_pb_for_file_nmf(): 233 def test_get_pb_for_file_nmf():
227 pbihist = feat_loader.get_pb_for_file('data/sample_dataset/Melodia/mel_1_2_1.csv', nmfpb=True, scale=False) 234 pbihist = feat_loader.get_pb_for_file(TEST_MELODIA_FILE, nmfpb=True, scale=False)
228 assert pbihist.shape[1] == 240 235 assert pbihist.shape[1] == 240
229 236
230 237
231 def test_get_features(): 238 def test_get_features():
232 df = pd.read_csv('data/sample_dataset/metadata.csv') 239 df = pd.read_csv(TEST_METADATA_FILE)
233 df = df.iloc[:1, :] 240 df = df.iloc[:1, :]
234 os.chdir('data/') 241 os.chdir('data/')
235 data_list = feat_loader.get_features(df) 242 print df.head()
243 print os.getcwd()
244 ddf = pd.read_csv(df['Melodia'].iloc[0])
245 print ddf.head()
246 data_list = feat_loader.get_features(df, precomp_melody=False)
236 os.chdir('..') 247 os.chdir('..')
237 assert len(np.unique(data_list[-1])) == 1 248 assert len(np.unique(data_list[-1])) == 1
238 249
239 250
240 def test_get_features_n_files(): 251 def test_get_features_n_files():
241 df = pd.read_csv('data/sample_dataset/metadata.csv') 252 df = pd.read_csv(TEST_METADATA_FILE)
242 n_files = 3 253 n_files = 3
243 df = df.iloc[:n_files, :] 254 df = df.iloc[:n_files, :]
244 os.chdir('data/') 255 os.chdir('data/')
245 data_list = feat_loader.get_features(df) 256 data_list = feat_loader.get_features(df, precomp_melody=False)
246 os.chdir('..') 257 os.chdir('..')
247 assert len(np.unique(data_list[-1])) == n_files 258 assert len(np.unique(data_list[-1])) == n_files
248 259
249 260
250 def test_get_features_n_frames(): 261 def test_get_features_n_frames():
251 df = pd.read_csv('data/sample_dataset/metadata.csv') 262 df = pd.read_csv(TEST_METADATA_FILE)
252 df = df.iloc[:1, :] 263 df = df.iloc[:1, :]
253 os.chdir('data/') 264 os.chdir('data/')
254 data_list = feat_loader.get_features(df) 265 data_list = feat_loader.get_features(df, precomp_melody=False)
255 os.chdir('..') 266 os.chdir('..')
256 dur_sec = 11.5 # duration of first file in metadata.csv is > 11 seconds 267 dur_sec = 11.5 # duration of first file in metadata.csv is > 11 seconds
257 n_frames_true = np.round((dur_sec - feat_loader.win2sec) * feat_loader.framessr2) 268 n_frames_true = np.round((dur_sec - feat_loader.win2sec) * feat_loader.framessr2)
258 assert len(data_list[0]) == n_frames_true 269 assert len(data_list[0]) == n_frames_true
259 270