示例#1
0
import echo_nest_functions as enf

for i in range(0, 1301):
    try:
        dfs = enf.get_dfs_from_json("echonest_chords/" + str(i).zfill(4) +
                                    "/echonest.json")
        chord_timestamp_df = enf.get_chord_timestamp_df(
            "echonest_chords/" + str(i).zfill(4) + "/full.lab", sep="\t")
        result_df = enf.get_df_with_pitch_class_cols(dfs, chord_timestamp_df)
        mean_pitch_df = enf.mean_pitch_squared_df(result_df)
        mean_pitch_df.to_csv("echonest_chords/" + str(i).zfill(4) +
                             "/mean_chord_pitches.csv")
    except:
        print("echonest_chords/" + str(i).zfill(4) + "could not be found")

# enf.plot_adj_pitches_from_chord_df(mean_pitch_df, 'Chords and Pitch Classes to David Bowie\'s, "Space Oddity"')
示例#2
0
import echo_nest_functions
import ast
import pandas as pd
import matplotlib.pyplot as plt

# David bowie Space Oddity
dfs = echo_nest_functions.get_dfs_from_json(
    "../echonest_chords/0086/echonest.json")
chord_timestamp_df = pd.read_csv("../echonest_chords/0086/full.lab", sep="\t")
# rename columns
chord_timestamp_df.columns = ['start_chord', 'end_chord', 'chord']

segments_df = dfs['segments']
segments_df['chord'] = ''
segments_df['chord'] = segments_df.apply(
    echo_nest_functions.get_chord_from_timestamp,
    axis=1,
    args=(chord_timestamp_df, ))
segments_df['pitches'] = segments_df['pitches'].astype('str')

result_df = segments_df.apply(echo_nest_functions.extract_pitch_class_columns,
                              axis=1)

grouped_df = result_df.groupby(by=['chord'])

mean_pitch_val_df = grouped_df['C', 'C#/Db', 'D', 'D#/Eb', 'E', 'F', 'F#/Gb',
                               'G', 'G#/Ab', 'A', 'A#/Bb', 'B'].mean()
mean_pitch_val_df = mean_pitch_val_df.reset_index()

print(mean_pitch_val_df)
示例#3
0
import echo_nest_functions as enf
# David bowie Space Oddity
dfs = enf.get_dfs_from_json("../echonest_chords/0086/echonest.json")
chord_timestamp_df = enf.get_chord_timestamp_df(
    "../echonest_chords/0086/full.lab", sep="\t")

result_df = enf.get_df_with_pitch_class_cols(dfs, chord_timestamp_df)
mean_pitch_df = enf.mean_pitch_squared_df(result_df)

enf.plot_adj_pitches_from_chord_df(
    mean_pitch_df,
    'Chords and Pitch Classes to David Bowie\'s, "Space Oddity"')