pythonadvanced
Detect Overlapping Date Intervals
Identify overlapping time periods in a DataFrame (e.g., booking conflicts or subscription overlaps).
pythonPress ⌘/Ctrl + Shift + C to copy
import pandas as pd
bookings = pd.DataFrame({
'id': [1, 2, 3, 4],
'start': pd.to_datetime(['2024-01-01','2024-01-03','2024-01-05','2024-01-08']),
'end': pd.to_datetime(['2024-01-05','2024-01-07','2024-01-10','2024-01-12']),
})
overlaps = []
for _, row in bookings.iterrows():
mask = (
(bookings['id'] != row['id']) &
(bookings['start'] < row['end']) &
(bookings['end'] > row['start'])
)
if mask.any():
overlaps.append((row['id'], bookings.loc[mask,'id'].tolist()))
print('Overlapping bookings:', overlaps)Use Cases
- scheduling conflicts
- subscription overlap
- room booking systems
Tags
Related Snippets
Similar patterns you can reuse in the same workflow.
pythonbeginner
Pandas DataFrame Transformations
Common pandas DataFrame transformations including column operations, type casting, and string methods.
Best for: Cleaning raw data files for analysis
#pandas#dataframe
pythonbeginner
Pandas DataFrame Filtering Techniques
Filter DataFrames using boolean masks, query syntax, isin, between, and string matching methods.
Best for: Extracting subsets of data for reporting
#pandas#filtering
pythonintermediate
Pandas GroupBy Aggregation Examples
GroupBy operations with multiple aggregations, named aggregations, and transform for DataFrame analysis.
Best for: Sales reporting by region and time period
#pandas#groupby
pythonadvanced
Apache Airflow DAG Example
Airflow DAG with task dependencies, retries, SLA, and PythonOperator for daily data pipeline.
Best for: Orchestrating daily data pipelines
#airflow#dag