import pandas as pd
import numpy as np
import random
import os

# Create directory for dataset
os.makedirs("data", exist_ok=True)

# Generate synthetic healthcare data
np.random.seed(42)
n_samples = 1000
age = np.random.randint(20, 80, n_samples)  # Patient age
blood_pressure = np.random.randint(90, 180, n_samples)  # Systolic BP
cholesterol = np.random.randint(150, 300, n_samples)  # Cholesterol level
glucose = np.random.randint(70, 200, n_samples)  # Glucose level

# Simulate disease diagnosis (1 = disease, 0 = no disease)
diagnosis = []
for i in range(n_samples):
    prob = 0.7 if (age[i] > 50 and blood_pressure[i] > 140 and cholesterol[i] > 200) else 0.3
    diagnosis.append(1 if random.random() < prob else 0)

# Create DataFrame
data = {
    'age': age,
    'blood_pressure': blood_pressure,
    'cholesterol': cholesterol,
    'glucose': glucose,
    'diagnosis': diagnosis
}
df = pd.DataFrame(data)
csv_path = "data/healthcare_data.csv"
df.to_csv(csv_path, index=False)
print(f"Created {csv_path} with {len(df)} entries.")

# Print sample
print("\nSample of healthcare_data.csv:")
print(df.head())

