This folder contains practical examples that demonstrate the filtering and analysis capabilities of Dataspot. Each file focuses on specific use cases with concise, easy-to-understand code.
Shows how to filter data before analysis using queries:
- Single field filtering
- Multiple field filtering
- List value filtering
- Tree visualization with queries
Use cases: E-commerce analysis, user segmentation by region/type.
python 01_basic_query_filtering.pyDemonstrates filtering patterns after analysis using metrics:
- Percentage thresholds
- Record count limits
- Pattern depth filtering
- Combined filters
Use cases: Support ticket analysis, finding significant patterns.
python 02_pattern_filtering_basic.pyShows text-based filtering capabilities:
containsfilters (include text)excludefilters (exclude text)- Regular expression filtering
- Combined text + metric filters
Use cases: Web analytics, browser analysis, category filtering.
python 03_text_pattern_filtering.pyComplex scenarios combining multiple filter types:
- Query filters + pattern filters
- Progressive filtering
- Comparative analysis
- Business scenario examples
Use cases: Sales analysis, enterprise segmentation, complex business queries.
python 04_advanced_filtering.pyHandling problematic data and edge cases:
- None/null values
- Mixed data types
- Missing fields
- Empty datasets
- Special characters
Use cases: Data cleaning, validation, real-world data issues.
python 05_data_quality_and_edge_cases.pyComplete business use cases:
- Financial fraud detection
- Customer support optimization
- Marketing analysis
- Performance monitoring
Use cases: End-to-end business applications.
python 06_real_world_scenarios.pyHierarchical data structures for dashboards:
- Basic tree building
- Tree filtering
- Query + tree combinations
- Dashboard-ready JSON output
Use cases: Interactive dashboards, hierarchical visualization, drill-down interfaces.
python 07_tree_visualization.pyIntelligent pattern discovery without manual field selection:
- Automatic field detection
- Field importance ranking
- Smart combination testing
- Discovery insights
Use cases: Exploratory data analysis, fraud detection, business intelligence.
python 08_auto_discovery.pyCompare patterns between time periods:
- Change detection
- Statistical significance testing
- Anomaly identification
- Trend analysis
Use cases: Fraud monitoring, performance tracking, A/B testing.
python 09_temporal_comparison.pyAdvanced statistical methods and calculations:
- Significance testing
- Effect size calculations
- Confidence intervals
- Business interpretations
Use cases: A/B testing, fraud detection confidence, statistical validation.
python 10_stats.pyInstall Dataspot:
pip install dataspotOr for local development:
pip install -e .# Navigate to examples folder
cd examples
# Run individual examples
python 01_basic_query_filtering.py
python 02_pattern_filtering_basic.py
# ... etc
# Or run all examples
for file in *.py; do
echo "=== Running $file ==="
python "$file"
echo ""
doneAll examples use the new structured API with Input/Options models:
from dataspot import Dataspot
from dataspot.models.finder import FindInput, FindOptions
# Basic usage
dataspot = Dataspot()
result = dataspot.find(
FindInput(data=data, fields=fields, query=query),
FindOptions(min_percentage=10.0, limit=5)
)
# Access results
patterns = result.patterns
for pattern in patterns:
print(f"{pattern.path} - {pattern.count} records ({pattern.percentage:.1f}%)")find()- Find concentration patternsanalyze()- Comprehensive analysis with insightstree()- Build hierarchical tree structuresdiscover()- Automatic pattern discoverycompare()- Compare datasets for changes
- Single values:
{"field": "value"} - Lists:
{"field": ["value1", "value2"]} - Multiple fields:
{"field1": "value1", "field2": "value2"}
min_percentage/max_percentage- Percentage thresholdsmin_count/max_count- Record count limitsmin_depth/max_depth- Pattern complexitycontains- Text that must be presentexclude- Text that must be excludedregex- Regular expression matchinglimit- Maximum number of results
- Fraud detection (examples 06, 09)
- Risk analysis (examples 04, 10)
- User behavior (examples 01, 07)
- Conversion analysis (examples 02, 09)
- Ticket classification (example 02)
- Resource optimization (example 06)
- Campaign analysis (examples 03, 06)
- Audience segmentation (example 04)
- Start simple - Begin with basic examples (01-03)
- Use your data - Replace example datasets with your own
- Combine techniques - Mix approaches from different examples
- Handle edge cases - Review example 05 for real-world data
- Get inspired - Check example 06 for business applications
pip install dataspot- Check data format (list of dictionaries)
- Reduce filtering thresholds (lower
min_percentage) - Verify field names match your data
- Use
queryfilters to reduce dataset size first - Apply
limitto restrict results - Increase
min_countormin_percentagethresholds
All examples are designed to be educational and easily modifiable for your specific use cases!