import pandas as pd
import random
import os

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

# Sample positive and negative words for synthetic reviews
positive_words = ["great", "amazing", "love", "fantastic", "enjoyed", "wonderful", "brilliant"]
negative_words = ["bad", "terrible", "hate", "awful", "boring", "disappointing", "poor"]

# Generate synthetic movie reviews
def generate_review(sentiment):
    length = random.randint(10, 50)  # Random review length
    words = positive_words if sentiment == 1 else negative_words
    review = " ".join(random.choices(words + ["movie", "film", "plot", "acting"], k=length))
    return review

# Create dataset
num_reviews = 1000  # 500 positive, 500 negative
data = []
for i in range(num_reviews // 2):
    data.append({"review": generate_review(1), "sentiment": 1})
    data.append({"review": generate_review(0), "sentiment": 0})

# Save to CSV
df = pd.DataFrame(data)
csv_path = "data/movie_reviews.csv"
df.to_csv(csv_path, index=False)
print(f"Created {csv_path} with {len(df)} entries.")

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

