Knowledge Flow
ArffLoader
i z menu kontekstowego wybierz opcję Configure…
. Wskaż plik z danymi. Zmień nazwę operatora na Load data.TextViewer
i zmień jego nazwę na View data as text. ArffLoader
i z menu kontekstowego wybierz opcję dataSet
. Na ekranie pojawi się niebieska linia reprezentująca przepływ danych. Kliknij na operatorze TextViewer
aby przesłać do niego dane.ArffLoader
i z menu kontekstowego wybierz opcję Start loading
. Zaobserwuj w logu u dołu strony kiedy proces się zakończy. Po zakończeniu przetwarzania kliknij prawym klawiszem myszy na operatorze TextViewer
i z menu kontekstowego wybierz opcję Show results
. Przeanalizuj zawartość pliku.Attribute Summarizer
i prześlij do niego dane z operatora ArffLoader
. Ponownie uruchom przepływ i po jego zakończeniu z menu kontekstowego operatora Attribute Summarizer
wybierz opcję Show summaries
. Przeanalizuj rozkłady poszczególnych atrybutów. Czy w wyniku wizualnej inspekcji znajdujesz atrybut który może być istotnie związany z występowaniem stanu chorobowego?ScatterPlotMatrix
i prześlij do niego dane. Ponownie uruchom przepływ i po jego zakończeniu wyświetl wynik działania operatora ScatterPlotMatrix
.AddID
i prześlij do niego dane z operatora ArffLoader
. Z menu kontekstowego operatora AddID
wybierz opcję Configure…
i zapoznaj się z ogólną postacią okna własności operatora. Sprawdź, co kryje się za przyciskami More
i Capabilities
AddExpression
. Kliknij prawym klawiszem myszy na operatorze AddID
i z menu kontekstowego wybierz opcję dataSet
, a następnie prześlij dane (uzupełnione o atrybut ID
) do operatora AddExpression
. Otwórz okno konfiguracji operatora AddExpression
i wprowadź formułę (a6^2)/a1
. Nazwij nowy atrybut AChidx (age-cholesterol index). Zmień nazwę operatora na Add Age-Chol idx. Uruchom przepływ i obejrzyj graficznie jak wartości nowego atrybutu są skorelowane ze zmienną decyzyjną (atrybut num
). Podobny efekt możesz uzyskać za pomocą operatora MathExpression
.AddNoise
i skieruj do niego dane. Skonfiguruj operator w taki sposób, aby w trzecim atrybucie (sex) pojawiło się 25% losowych wartości. Uruchom przepływ i przy pomocy operatora AttributeSummarizer
sprawdź efekt dodania szumu.Discretize
i prześlij do niego dane. Zmień nazwę operatora na Create age bins
. W ustawieniach operatora wskaż podział drugiego atrybutu na 5 przedziałów. Obejrzyj uzyskany wynik. Następnie wróć do ustawień operatora i zmień flagę UseEqualFrequency
na true. Zobacz, jaki tryb dyskretyzacji zadziałał teraz.InterQuantileRange
. Dodaj go do przepływu i prześlij do niego dane. Interesuje nas znalezienie nietypowych wartości dla atrybutu chol (szósty atrybut). Zmień parametr Outlier Factor na 1.5 i uruchom przepływ, a następnie obejrzyj wynik działania operatora korzystając z operatora DataVisualizer
(zakładka Visualization). Spróbuj podać wartość poziomu cholesterolu, po której pacjent jest uznany za wartość odstającą (ang. outlier).NominalToBinary
i zmień jego nazwę na Chest Pain Flag
. Dodaj ten operator i prześlij do niego przepływ danych. W konfiguracji operatora wskaż do transformacji czwarty atrybut (cp, ból klatki piersiowej). Obejrzyj wynik.NumericCleaner
. Umieść go w przepływie, nazwij go Clean cholesterol
i prześlij do niego dane. W konfiguracji operatora wskaż chęć wyczyszczenia dziewiątego atrybutu (cp) i zaproponuj zamianę wszystkich wartości bliskich 350 na wartość 350, wykorzystując wartość 10% jako próg tolerancji.Obfuscate
w swoim przepływie i zaobserwuj wynik jego działania. Zmień nazwę operatora na Encrypt data
.Standardize
i prześlij do niego dane (prześlij dane z operatora Clean cholesterol
jeśli chcesz mieć dostęp do rzeczywistych nazw atrybutów i ich wartości. Operator w rzeczywistości dokona standaryzacji wszystkich zmiennych numerycznych. Obejrzyj wynik.RemoveFrequentValues
i wskaż drugi atrybut (age). Pozostaw tylko 3 najczęściej pojawiające się wartości atrybutu age. Uruchom przepływ i zaobserwuj wynik. Następnie dodaj operator RemoveRange
i usuń atrybuty będące flagami binarnymi reprezentującymi poszczególne typy bólu w klatce piersiowej (atrybuty 4-7). ArffSaver
. Zmień nazwę operatora na Save data
i prześlij do niego przepływ. W konfiguracji operatora wskaż nazwę i lokalizację pliku, do którego zapiszesz wynik.Sample/data
, a następnie przeciągnij i upuść na panel głównego procesu zbiór danych GolfF11
.Meta Data View
i przeanalizuj strukturę zbioru danych.Plot View
), jako rodzaj wykresu wybierz Scatter i narysuj zależność między temperaturą i wilgotnością, z uwzględnieniem czy w dany dzień warto grać w golfa (parametr Color Column.Normalize
i upuść go na przepływ danych z operatora Retrieve Golf
do rezultatu. Alternatywnie, możesz upuścić operator Normalize
gdziekolwiek w panelu edycji procesu, a następnie przeciągnąć przepływ danych z portu wyjściowego (out) operatora Retrieve Golf
do portu wejściowego (exa) operatora Normalize
. W tym drugim przypadku pamiętaj, aby port wyjściowy exa operatora Normalize
połączyć z portem wynikowym res. Normalize
. Wskaż, że chcesz normalizować jedynie atrybuty numeryczne (attribute filter type = value_type, value type = numeric). Jako metodę normalizacji pozostaw Z-transformation
. Uruchom proces i zaobserwuj wynik. Czy potrafisz zgadnąć, co się stało?Enable operator
lub korzystając ze skrótu klawiszowego Ctrl+E
.Discretize…
. Najpierw użyj operatora Discretize by Binning
aby podzielić temperaturę na trzy przedziały (chłodno, umiarkowanie, ciepło). Następnie dodaj operator Map
i za pomocą pola value mappings
dokonaj przetłumaczenia nazw zakresów temperatury na wartości opisowe.Discretize by Binning
i w jego miejsce wstaw operator Discretize by Frequency
, również wskazując trzy przedziały dyskretyzacji dla atrybutu Temperature
. Alternatywnie, możesz kliknąć prawym klawiszem myszy na operatorze Discretize by Binning
i z menu kontekstowego wybrać opcję Replace Operator
, nawigując kolejno do Data Transformation/Type Conversion/Discretization/Discretize by Frequency.Detect Outliers (Distance)
i dodaj go do procesu. Wskaż, że detekcja wartości odstających odbywa się przez policzenie odległości do trzech najbliższych sąsiadów, oraz że w zbiorze danych występują trzy wartości osobliwe. Uruchom proces i zaobserwuj wynik. Przejdź do widoku wykresu i wybierz jako typ wykresu Scatter 3D Color. Na osiach X i Y umieść temperaturę i wilgotność, na osi Z umieść atrybut outlier, dodatkowo wykorzystując kolor do podkreślenia wartości odstających. Postaraj się znaleźć taką kombinację atrybutów, które przekonująco wskazują, że znalezione dni faktycznie odstają od reszty.Nominal to Binominal
i wskaż atrybut Outlook jako atrybut do transformacji. Replace Missing Values
aby zamienić wszystkie brakujące wartości na wartość -1.Replace Missing Values
prześlij do operatora Impute Missing Values
. Wyłącz opcję learn on complete cases
i wskaż losową kolejność przetwarzania rekordów ze zbioru. Zauważ, że operator Impute Missing Values
jest operatorem dominującym, tj. zawiera w sobie inny operator. Wejdź do wewnątrz operatora Impute Missing Values
i jako metodę wyznaczania zamiennika wartości brakującej wybierz operator k-NN
. Skonfiguruj operator w taki sposób, aby wartość brakująca była uzupełniana w oparciu o trzech najbliższych sąsiadów i wyliczana za pomocą zmodyfikowanej odległości euklidesowej.Replace Missing Values
i Impute Missing Values
) na wyjście procesu. Porównaj wykresy histogramów dla atrybutu standby-pay
.