Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr
W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.
W analizie danych kluczowymi czynnikami wpływającymi są zmienne, które mają znaczący wpływ na zmienną zależną. Innymi słowy, są to czynniki, które w największym stopniu przyczyniają się do wyniku będącego przedmiotem zainteresowania. W Pythonie regresja liniowa służy do identyfikowania kluczowych czynników wpływających na zbiór danych oraz do mierzenia siły i kierunku zależności między różnymi zmiennymi. Możesz obejrzeć pełny film tego samouczka na dole tego bloga .
Identyfikacja kluczowych czynników wpływających może być przydatna do zrozumienia podstawowych relacji w zbiorze danych i do prognozowania przyszłych wyników.
Biblioteki Pythona udostępniają szereg narzędzi i funkcji do przeprowadzania analizy regresji i identyfikowania kluczowych czynników wpływających na zbiór danych.
Spis treści
Korzystanie z modelu regresji liniowej
W tym artykule pokażę, jak możesz użyć modelu regresji liniowej , aby naśladować niektóre kluczowe czynniki mające wpływ na LuckyTemplates. Naszym celem jest wykorzystanie wszystkich naszych zmiennych, aby móc opisać, co zmienia się w innej zmiennej.
Kluczowe elementy mające wpływ na usługę LuckyTemplates to model regresji liniowej. Często używamy tego, chociaż nie wiemy dokładnie, co jest pod maską. W tym samouczku używam tego, aby zidentyfikować czynniki wpływające na opłaty ubezpieczeniowe.
Przyjrzyjmy się zbiorowi danych o opłatach ubezpieczeniowych. Chcę to wyjaśnić statusem palacza, płcią, regionem, dziećmi, BMI i wiekiem.
Obecnie kluczowi influencerzy pokazują najbardziej wpływową zmienną. Kiedy palacz jest twierdzący, średnia opłata jest o 23 615 USD wyższa w porównaniu do wszystkich innych wartości palacza.
To świetna wizualizacja, ale nie daje nam żadnych innych zmiennych, które mogłyby wpłynąć na ładunki.
Zagłębmy się w to, zmieniając listę rozwijaną z Zwiększenie na Zmniejszenie .
Tym razem jest odwrotnie. Jeśli nie jesteś palaczem, średnia opłata jest o 23 615 USD niższa w porównaniu do wszystkich innych wartości palacza.
Jak widać, jest to model regresji liniowej, który zbudowałem przy użyciu niektórych kodów Pythona i potokiem do usługi LuckyTemplates przy minimalnym formatowaniu warunkowym .
Jeśli chodzi o kodowanie, mamy nad tym pełną kontrolę, a zobaczysz, jak to zbudowałem jako alternatywę lub uzupełnienie wizualizacji kluczowych influencerów.
Przejdźmy do notatnika Jupiter. Dla lepszego zrozumienia wyjaśnię je część po części.
Używane biblioteki Pythona
W pierwszej części załadowałem wszystkie biblioteki, których chcę użyć. Jeśli nie znasz bibliotek, są to zbiory kodów i funkcji, które zbudowali dla nas programiści.
Zaimportowałem pandy jako pd , która jest biblioteką do manipulacji danymi, i numpy jako np, aby umożliwić nam wykonywanie obliczeń liniowych i warunkowych.
Używane modele
Porozmawiajmy o modelach, z których korzystałem. Przyniosłem sklearn.linear_model , która jest i użyłem modelu regresji liniowej. Na wypadek, gdybyśmy tego potrzebowali, przyniosłem również sklearn.preprocessing import StandardScaler , który pozwoli nam skalować nasze dane.
Inny model, którego używam, nazywa się xgboost import XGBRegressor . Jest to model regresji z drzewem decyzyjnym i innymi pomocnymi aspektami.
Ponadto użyłem także train_set_split , ponieważ chcę mieć możliwość podziału danych między zestawem treningowym a zestawem uczącym. W uczeniu maszynowym potrzebujemy zestawu danych treningowych, aby algorytm nauczył się, zanim wykona jakiekolwiek prognozy.
Wprowadziłem również mean_squared_error, aby określić model i bibliotekę matplotlib.pyplot na wypadek, gdybyśmy chcieli zrobić wizualizacje.
Być może nie wykorzystamy wszystkich z nich, ale może to być pomocne, więc umieściłem je wszystkie.
Wykorzystany zestaw danych
Następnie rzućmy okiem na zestaw danych. Użyłem funkcji df = pd.read_csv , aby wprowadzić zestaw danych ubezpieczeniowych, a następnie przekonwertowałem dane na fikcyjne zmienne, używając df1 = pd.get_dummies (df, drop_first = True) .
Aby to zrobić, utwórzmy nową komórkę, naciskając Esc + B na naszej klawiaturze, a następnie wpisz df.head , aby ocenić dane.
Mamy wiek, płeć, BMI, dzieci, palacza, region i opłaty, które chcemy przewidzieć jako zmienną zależną. Są to dane, które przychodzą nieprzygotowane do uczenia maszynowego.
W uczeniu maszynowym nie będziemy mogli używać zmiennych kategorycznych, takich jak kobiety, mężczyźni, południowy zachód i północny zachód. Dlatego pierwszą rzeczą, którą musimy zrobić, jeśli jest to typowy model regresji, jest przetłumaczenie zmiennych kategorialnych na dane liczbowe.
Aby to zrobić, użyłem funkcji pd.get_dummies , a następnie zmieniłem ją na kolumnę liczbową, zmieniając df.head na df1.head . Kliknijmy przycisk Uruchom , aby pokazać, jak to wygląda.
Teraz możemy zobaczyć tę nową kolekcję kolumn, takich jak sex_male , smoker_yes , region_northwest i tak dalej. Algorytm automatycznie wie, że jeśli jest to 1, oznacza to tak, a 0 oznacza nie.
Zauważalnie, nie ma sex_female i region_northeast , ponieważ nie chcemy zbytnio komplikować modelu. Porzuciliśmy je za pomocą funkcji drop_first = True .
Następną rzeczą, którą zrobiłem, było wprowadzenie funkcji LinearRegression i zapisanie jej w modelu zmiennych.
Stworzyłem również zmienne X i Y, aby przewidzieć nasze zmienne Y, a następnie wprowadziłem wszystkie inne kolumny dla naszych predyktorów, używając tego samego zestawu danych, którego używaliśmy wcześniej.
W przypadku zmiennej X użyliśmy df1.drop („opłaty”, oś=1) , aby zrzucić ładunki. Z drugiej strony potrzebujemy opłat za zmienną Y, dlatego wstawiliśmy df1['charges'] .
Za pomocą poniższych funkcji utworzyłem zestawy treningowe i testowe zarówno dla X, jak i Y, używając funkcji train_test_split i przekazałem je do zmiennych X i Y.
Ponadto użyłem model.fit , aby dopasować dane treningowe do naszego modelu. Oznacza to, że model regresji liniowej będzie uczył się danych treningowych.
Tym razem przyjrzyjmy się naszym predyktorom. Widzimy to za pomocą współczynników, ponieważ opisują one, w jaki sposób każda z tych cech lub zmiennych wpływa na ładunki.
Zauważalne jest również, że liczba współczynnika dla smoker_yes jest bardzo zbliżona, jeśli porównamy ją z liczbą, jaką mamy dla kluczowych influencerów iw naszym modelu.
Aby utworzyć tabelę, w której mamy cechy i współczynniki, użyłem pd.DataFrame w celu wprowadzenia współczynników do tabeli i stworzenia wizualizacji.
Używanie różnych modeli dla wizualizacji kluczowych influencerów
Wskazane jest również użycie różnych modeli w celu pozyskania kluczowych influencerów poprzez wprowadzenie XGB.Regressor .
Kiedy przedstawiamy model, jest to po prostu prosta regresja liniowa; ale kiedy wprowadziliśmy XGB.Regressor, jest wiele parametrów, których możemy użyć do optymalizacji modelu.
Zreplikowałem również te funkcje, tworząc poniższą ramkę danych. Współczynniki te są bardzo różne w porównaniu z tym, co widzieliśmy w regresji liniowej.
W tej tabeli liczby są dokładne. Na przykład, jeśli jesteś palaczem, Twoje opłaty wzrosną o 23 787 USD. Jeśli masz jedno dziecko, wzrośnie ono o 472 dolary i tak dalej.
Te osoby mające wpływ są również ważne, ponieważ odzwierciedlają to, co mamy w tabeli regresji liniowej. Jest nieco inny, ale bardzo zbliżony, ponieważ te influencerki sumują się do jednego. To po prostu inny sposób patrzenia na influencerów.
Testowanie dokładności analizy regresji liniowej
Następnie chcemy zobaczyć dokładność naszego modelu, dlatego użyliśmy y_pred = model.predict (X_test) . Wymyślił prognozę, że był wyłączony o 5885,7.
To tylko testowy zestaw danych i niezależnie od tego, czy prognoza jest dobra, czy zła, nadal musimy to ocenić. Nie zamierzamy tego teraz robić, ponieważ skupiamy się tylko na naszych kluczowych influencerach.
Wracając do LuckyTemplates, pokażę ci, jak bardzo łatwo to ująłem. To osobna tabela, w której możesz zobaczyć funkcje i osoby mające wpływ.
Zrobiłem to, przechodząc do Transform data .
Następnie zduplikowałem swój zestaw danych i mogłem utworzyć tę tabelę. Możemy również przejść do zastosowanych kroków , aby zobaczyć kod Pythona i przejrzeć zmienne, których użyliśmy.
Otwórzmy skrypt Pythona , klikając go dwukrotnie.
Przywieźliśmy nasze biblioteki. Przekształciliśmy go w zestaw danych do wstępnego przetwarzania oparty na uczeniu maszynowym, który składał się tylko z zer i jedynek.
Ponadto wprowadziliśmy model regresji, stworzyliśmy nasze X i Y, aby dopasować je do danych, a następnie zapisaliśmy tabelę jako dane wyjściowe. Model jest wystarczająco dobry, więc nie korzystałem z zestawu testów treningowych.
Inną rzeczą, którą zrobiłem, było przełączenie zestawu danych na df , ponieważ po prostu łatwiej jest pisać. Zbiór danych jest zmienną dla oryginalnych danych.
Za pomocą tej tabeli zapisałem ją jako wynik, dlatego mamy te współczynniki.
Aby wyświetlić to w formie wizualnej, kliknij Zamknij i zastosuj .
Mamy teraz wykres słupkowy . Użyłem również formatowania warunkowego, aby pokazać pozytywy i negatywy.
Jak zainstalować DAX Studio i edytor tabelaryczny w usłudze LuckyTemplates
Konfigurowanie ustawień zapytań w usłudze LuckyTemplates DAX Studio
Parametry usługi LuckyTemplates za pośrednictwem edytora zapytań
Wniosek
Podsumowując, zrozumienie kluczowych czynników wpływających i wdrożenie regresji liniowej w Pythonie może być potężnym narzędziem do analizy danych i przewidywania.
Identyfikując kluczowe czynniki wpływające na zmienną zależną i wykorzystując regresję liniową do modelowania ich zależności, możemy lepiej zrozumieć i przewidzieć przyszłe wyniki .
Korzystając z potężnych bibliotek Pythona, łatwo jest zaimplementować regresję liniową i wyodrębnić znaczące spostrzeżenia z danych.
Wszystkiego najlepszego,
W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.
Odkryj różnorodne funkcje zbierania, które można wykorzystać w Power Automate. Zdobądź praktyczne informacje o funkcjach tablicowych i ich zastosowaniu.
Z tego samouczka dowiesz się, jak ocenić wydajność kodów DAX przy użyciu opcji Uruchom test porównawczy w DAX Studio.
Czym jest self w Pythonie: przykłady z życia wzięte
Dowiesz się, jak zapisywać i ładować obiekty z pliku .rds w R. Ten blog będzie również omawiał sposób importowania obiektów z R do LuckyTemplates.
Z tego samouczka języka kodowania DAX dowiesz się, jak używać funkcji GENERUJ i jak dynamicznie zmieniać tytuł miary.
W tym samouczku omówiono sposób korzystania z techniki wielowątkowych wizualizacji dynamicznych w celu tworzenia szczegółowych informacji na podstawie dynamicznych wizualizacji danych w raportach.
W tym artykule omówię kontekst filtra. Kontekst filtrowania to jeden z głównych tematów, z którym każdy użytkownik usługi LuckyTemplates powinien zapoznać się na początku.
Chcę pokazać, jak usługa online LuckyTemplates Apps może pomóc w zarządzaniu różnymi raportami i spostrzeżeniami generowanymi z różnych źródeł.
Dowiedz się, jak obliczyć zmiany marży zysku przy użyciu technik, takich jak rozgałęzianie miar i łączenie formuł języka DAX w usłudze LuckyTemplates.