pipeline = [
dict(dtype="HasHarmonyLabelsFilter", keep_values=[True]),
"KeySlicer",
]
A = D.apply_step(*pipeline) # D = DLC
B = A.apply_step("ModeGrouper")
A, B = analyzers.BigramAnalyzer(features="BassNotes").process(A, B)
a_table, b_table = A.get_result(), B.get_result()
a_bg_tuples = a_table.make_bigram_tuples(("bass_degree", "intervals_over_bass"), join_str=True)
b_bg_tuples = b_table.make_bigram_tuples(("bass_degree", "intervals_over_bass"), join_str=True)
a_df = a_bg_tuples.df
b_df = b_bg_tuples.filter_index_level(level=0, drop_level=True).reindex(a_df.index)
diff_mask = (a_df != b_df).values
print(f"{diff_mask.sum()} differences")
comparison = pd.concat([a_df[diff_mask], b_df[diff_mask]], axis=1)
comparison
There should be no differences. Currently, both n-gram sequences contain inconsistencies due to this issue, but: comparison.zip
There should be no differences. Currently, both n-gram sequences contain inconsistencies due to this issue, but: comparison.zip