def test_datatable_clear_index(sample_df): # Test by removing index tag dt = DataTable(sample_df, index='id') assert dt.index == 'id' dt = dt.remove_semantic_tags({'id': 'index'}) assert dt.index is None assert all( ['index' not in col.semantic_tags for col in dt.columns.values()]) # Test using setter dt = DataTable(sample_df, index='id') assert dt.index == 'id' dt.index = None assert dt.index is None assert all( ['index' not in col.semantic_tags for col in dt.columns.values()])
def test_datatable_clear_time_index(sample_df): # Test by removing time_index tag dt = DataTable(sample_df, time_index='signup_date') assert dt.time_index == 'signup_date' dt = dt.remove_semantic_tags({'signup_date': 'time_index'}) assert dt.time_index is None assert all( ['time_index' not in col.semantic_tags for col in dt.columns.values()]) # Test using setter dt = DataTable(sample_df, time_index='signup_date') assert dt.time_index == 'signup_date' dt.time_index = None assert dt.time_index is None assert all( ['time_index' not in col.semantic_tags for col in dt.columns.values()])
def test_remove_semantic_tags(sample_df): semantic_tags = { 'full_name': ['tag1', 'tag2', 'tag3'], 'age': ['numeric', 'age'], 'id': ['tag1', 'tag2'] } dt = DataTable(sample_df, semantic_tags=semantic_tags, use_standard_tags=False) tags_to_remove = { 'full_name': ['tag1', 'tag3'], 'age': 'numeric', 'id': {'tag1'} } new_dt = dt.remove_semantic_tags(tags_to_remove) # Verify original tags were not changed assert dt.columns['full_name'].semantic_tags == {'tag1', 'tag2', 'tag3'} assert dt.columns['age'].semantic_tags == {'numeric', 'age'} assert dt.columns['id'].semantic_tags == {'tag1', 'tag2'} assert new_dt is not dt assert new_dt.columns['full_name'].semantic_tags == {'tag2'} assert new_dt.columns['age'].semantic_tags == {'age'} assert new_dt.columns['id'].semantic_tags == {'tag2'}