from sklearn.feature_extraction.text import TfidfVectorizer

# Sample corpus
corpus = [
    "I love machine learning",
    "Machine learning is great",
    "I love coding",
    "Machine learning is fun and machine learning is challenging"
]

# Initialize the TfidfVectorizer
vectorizer = TfidfVectorizer()

# Fit the model and transform the corpus into TF-IDF vectors
X = vectorizer.fit_transform(corpus)

# Convert the result to an array format
tfidf_array = X.toarray()

# Get the feature names (i.e., the vocabulary)
vocabulary = vectorizer.get_feature_names_out()

print("Vocabulary:", vocabulary)
print("TF-IDF Vectors:\n", tfidf_array)
