from sklearn.model_selection import train_test_split from sklearn.naive_bayes import GaussianNB from sklearn.metrics import accuracy_score # Sample dataset import pandas as pd data = { 'Outlook': ['Sunny','Sunny','Overcast','Rainy','Rainy','Rainy','Overcast','Sunny','Sunny','Rainy','Sunny','Overcast','Overcast','Rainy'], 'Temperature': ['Hot','Hot','Hot','Mild','Cool','Cool','Cool','Mild','Cool','Mild','Mild','Mild','Hot','Mild'], 'Play': ['No','No','Yes','Yes','Yes','No','Yes','No','Yes','Yes','Yes','Yes','Yes','No'] } df = pd.DataFrame(data) # Encode categorical values from sklearn.preprocessing import LabelEncoder le = LabelEncoder() df_encoded = df.apply(le.fit_transform) X = df_encoded[['Outlook','Temperature']] y = df_encoded['Play'] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2) model = GaussianNB() model.fit(X_train, y_train) pred = model.predict(X_test) print("Accuracy:", accuracy_score(y_test, pred)) __ __