[59083a]: / utils / feature_engineering.py

Download this file

20 lines (16 with data), 619 Bytes

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
from sklearn.decomposition import PCA
from sklearn.cluster import KMeans
import pandas as pd
class FeatureEngineering:
def __init__(self, dataframe):
self.dataframe = dataframe
def pca(self, n_components):
pca = PCA(n_components=n_components)
df_pca = pca.fit_transform(self.dataframe)
df_pca = pd.DataFrame(df_pca)
return df_pca
def kmeans(self, n_clusters):
kmeans = KMeans(n_clusters=n_clusters, random_state=42)
cluster_labels = kmeans.fit_predict(self.dataframe)
self.dataframe['kmeans'] = cluster_labels
return self.dataframe