Skip to content

Filter Methods

Apply Filter

filter(
  criteria: Dict[str, List[Any]], 
  context_state_name: str = 'Default'
) -> bool

Apply filters to focus analysis on specific data slices.

Parameters:

  • criteria: Dictionary mapping dimension names to lists of values to keep
  • context_state_name: Which context state to filter

Returns:

  • Boolean indicating success

Example:

# Filter to specific regions
cube.filter({'region': ['North', 'South']})

# Filter to specific products within those regions
cube.filter({'product': ['Electronics', 'Home']})

# Filter in a different context state
cube.filter({'region': ['West']}, context_state_name='State1')

Remove Filter

remove_filter(
  dimensions: List[str],
  context_state_name: str = 'Default'
) -> bool

Remove filters from specified dimensions.

Parameters:

  • dimensions: List of dimension names to remove filters from
  • context_state_name: Which context state to modify

Returns:

  • Boolean indicating success

Example:

# Remove region filter
cube.remove_filter(['region'])

Reset Filters

reset_filters(
  direction: str = 'backward',
  context_state_name: str = 'Default'
) -> bool

Reset filters using undo/redo functionality or clear all filters.

Parameters:

  • direction: 'backward' (undo), 'forward' (redo), or 'all' (clear all filters)
  • context_state_name: Which context state to modify

Returns:

  • Boolean indicating success

Example:

# Undo last filter operation
cube.reset_filters('backward')

# Redo previously undone filter operation
cube.reset_filters('forward')

# Clear all filters
cube.reset_filters('all')

Get Filters

get_filters(
  off_set: int = 0,
  context_state_name: str = 'Default'
) -> Dict[str, List[Any]]

Get currently active filters.

Parameters:

  • off_set: How many steps back in filter history to look
  • context_state_name: Which context state to check

Returns:

  • Dictionary of active filters

Example:

# Get current filters
current_filters = cube.get_filters()
print(f"Current filters: {current_filters}")