In [ ]:
import pandas as pd
from sklearn.decomposition import PCA
import matplotlib.pyplot as plt
# Inizializza PCA
pca = PCA()
# Adatta PCA ai dati
pca.fit(X)
# Calcola il rapporto di varianza spiegata cumulativa attraverso i componenti
cumulative_variance = np.cumsum(pca.explained_variance_ratio_)
# Plot del rapporto di varianza spiegata
plt.figure(figsize=(10, 6))
plt.plot(
range(1, len(cumulative_variance) + 1),
cumulative_variance,
marker="o",
linestyle="--",
)
plt.xlabel("Numero di Componenti")
plt.ylabel("Cumulative Explained Variance Ratio")
plt.title("Cumulative Explained Variance Ratio vs. Numero di Componenti")
plt.grid(True)
plt.show()