import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
from sklearn.cluster import KMeans
data = {
    'Age': np.random.randint(20, 80, 100),
    'BMI': np.random.randint(18, 35, 100),
    'Smoking': np.random.randint(0, 2, 100),
    'AlcoholConsumption': np.random.randint(0, 4, 100),
    'PhysicalActivity': np.random.randint(0, 4, 100),
    'ChronicDisease':np.random.randint(0,2,100)
}
df=pd.DataFrame(data)
df.head()
df.isnull().sum()
features=['Age','BMI','Smoking','AlcoholConsumption','PhysicalActivity','ChronicDisease']
scaler=StandardScaler()
df[features]=scaler.fit_transform(df[features])
df.head()
sns.pairplot(df)
plt.show()
sns.heatmap(df.corr(),annot=True)
plt.show()
pca=PCA(n_components=2)
p=pca.fit_transform(df[features])
p_df=pd.DataFrame(data=p,columns=['PC1','PC2'])
p_df['ChronicDisease']=df['ChronicDisease']
sns.scatterplot(x='PC1',y='PC2',hue='ChronicDisease',data=p_df)
plt.show()
kmeans=KMeans(n_clusters=2,random_state=0)
df['Cluster']=kmeans.fit_predict(df[features])
p_df['Cluster']=df['Cluster']
sns.scatterplot(x='PC1',y='PC2',hue='Cluster',data=p_df)
plt.show()
