Ocena grupowania ziaren
W poprzednim ćwiczeniu na podstawie wykresu inercji stwierdzono, że 3 to dobra liczba klastrów dla danych o ziarnach. W rzeczywistości próbki ziaren pochodzą z mieszanki 3 różnych odmian: „Kama", „Rosa" i „Canadian". W tym ćwiczeniu podzielisz próbki ziaren na trzy klastry i porównasz je z odmianami ziaren za pomocą tabeli krzyżowej.
Dysponujesz tablicą samples z próbkami ziaren oraz listą varieties podającą odmianę ziarna dla każdej próbki. Biblioteki Pandas (pd) i KMeans zostały już zaimportowane.
To ćwiczenie jest częścią kursu
Uczenie nienadzorowane w Pythonie
Instrukcje do ćwiczenia
- Utwórz model
KMeanso nazwiemodelz3klastrami. - Użyj metody
.fit_predict()modelumodel, aby dopasować go dosamplesi uzyskać etykiety klastrów. Wywołanie.fit_predict()jest równoważne z kolejnym wywołaniem.fit()i.predict(). - Utwórz DataFrame
dfz dwiema kolumnami o nazwach'labels'i'varieties', używając odpowiedniolabelsivarietiesjako wartości kolumn. Ten krok został już wykonany za ciebie. - Użyj funkcji
pd.crosstab()nadf['labels']idf['varieties'], aby policzyć, ile razy każda odmiana ziarna pokrywa się z każdą etykietą klastra. Wynik przypisz doct. - Kliknij Prześlij odpowiedź, aby zobaczyć tabelę krzyżową!
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Create a KMeans model with 3 clusters: model
model = ____
# Use fit_predict to fit model and obtain cluster labels: labels
labels = ____
# Create a DataFrame with labels and varieties as columns: df
df = pd.DataFrame({'labels': labels, 'varieties': varieties})
# Create crosstab: ct
ct = ____
# Display ct
print(ct)