#!/usr/bin/env python3
"""Data processing with pandas-style patterns."""
from typing import List, Dict, Any, Callable
from statistics import mean, median, stdev

def describe(data: List[float]) -> Dict[str, float]:
    return {
        'count': len(data),
        'mean': mean(data),
        'median': median(data),
        'std': stdev(data) if len(data) > 1 else 0,
        'min': min(data),
        'max': max(data),
    }

def filter_map(data: List[Any], predicate: Callable, transform: Callable) -> List[Any]:
    return [transform(item) for item in data if predicate(item)]

sales = [120, 340, 85, 420, 200, 310, 175, 490, 230, 380]
stats = describe(sales)
for k, v in stats.items():
    print(f'{k:>10}: {v:.2f}')
