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 tweets
positive_words = ["awesome", "love", "great", "happy", "amazing", "fantastic", "yay"]
negative_words = ["sad", "hate", "bad", "awful", "terrible", "disappointed", "ugh"]

# Generate synthetic tweets
def generate_tweet(sentiment):
    length = random.randint(5, 20)
    words = positive_words if sentiment == 1 else negative_words
    tweet = " ".join(random.choices(words + ["today", "feeling", "AI", "tech"], k=length))
    return tweet

# Create dataset
num_tweets = 1000
data = []
for i in range(num_tweets // 2):
    data.append({"tweet": generate_tweet(1), "sentiment": 1})
    data.append({"tweet": generate_tweet(0), "sentiment": 0})

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

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

