Lineáris regresszió Pythonban

Az adatelemzésben a kulcsfontosságú befolyásolók olyan változók, amelyek jelentős hatást gyakorolnak egy függő változóra. Más szóval, ezek azok a tényezők, amelyek leginkább hozzájárulnak az érdeklődés kimeneteléhez. A Pythonban lineáris regressziót használnak az adatkészlet kulcsfontosságú befolyásolóinak azonosítására, valamint a különböző változók közötti kapcsolat erősségének és irányának mérésére. Az oktatóanyag teljes videóját a blog alján tekintheti meg .

A kulcsfontosságú befolyásolók azonosítása hasznos lehet az adathalmaz mögöttes összefüggéseinek megértéséhez és a jövőbeli eredmények előrejelzéséhez.

A könyvtárak egy sor eszközt és funkciót biztosítanak a regressziós elemzés végrehajtásához és az adatkészlet kulcsfontosságú befolyásolóinak azonosításához.

Tartalomjegyzék

Lineáris regressziós modell használata

Ebben a cikkben bemutatom, hogyan használhat lineáris regressziós modellt a LuckyTemplates kulcsfontosságú befolyásolóinak utánzására. Célunk, hogy az összes változónkat felhasználjuk annak leírására, hogy mi változik egy másik változóban.

A LuckyTemplates kulcsfontosságú befolyásolója egy lineáris regressziós modell. Gyakran használjuk ezt annak ellenére, hogy nem tudjuk pontosan, mi van a motorháztető alatt. Ebben az oktatóanyagban ezt használom a biztosítási költségeket befolyásoló tényezők azonosítására.

Lineáris regresszió Pythonban

Nézzük meg a biztosítási díjak adatsorát. Azt szeretném, ha ez a dohányos állapottal, nemmel, régióval, gyerekekkel, BMI-vel és életkorral magyarázható.

Lineáris regresszió Pythonban

Jelenleg a legfontosabb befolyásolók mutatják a legbefolyásosabb változót. Ha a dohányos igen, az átlagos díj 23 615 dollárral magasabb, mint egy dohányos összes többi értékénél.

Ez egy nagyszerű látvány, de nem ad nekünk semmilyen más változót, amely befolyásolhatja a töltéseket.

Lineáris regresszió Pythonban

Merüljünk el benne a legördülő menü Növelésről Csökkentés értékre módosításával .

Ezúttal ennek az ellenkezője. Ha Ön nem dohányzik, az átlagos díj 23 615 dollárral alacsonyabb egy dohányzó összes többi értékéhez képest.

Lineáris regresszió Pythonban

Amint láthatja, ez egy lineáris regressziós modell, amelyet néhány Python-kóddal építettem fel, és minimális értékkel beépítettem a LuckyTemplatesbe.

Ami a kódolást illeti, teljes kontrollunk van felette, és látni fogod, hogyan építettem fel ezt a kulcsfontosságú influencer-vizuál alternatívájaként vagy kiegészítéseként.

Lineáris regresszió Pythonban

Ugorjunk át a Jupiter Notebookhoz. A jobb megértés érdekében hadd magyarázzam el ezeket részről részre.

Lineáris regresszió Pythonban

Használt Python-könyvtárak

Az első részben betöltöttem az összes használni kívánt könyvtárat. Ha nem ismeri a könyvtárakat, akkor ezek olyan kódok és funkciók gyűjteményei, amelyeket a fejlesztők építettek nekünk.

A pandákat pd-ként importáltam , ami egy adatmanipulációs könyvtár, a numpy-t pedig np-ként, hogy lehetővé tegye a lineáris számítások és feltételes számítások elvégzését.

Használt modellek

Beszéljünk az általam használt modellekről. Behoztam a sklearn.linear_model-t , amely egy , és egy lineáris regressziós modellt használtam. Arra az esetre, ha szükségünk lenne rá, behoztam a sklearn.preprocessing import StandardScalert is , amely lehetővé teszi adataink méretezését.

Egy másik általam használt modell az xgboost import XGBRegressor . Ez egy regressziós modell döntési fával és egyéb hasznos szempontokkal.

Ezen kívül a train_set_split-et is használtam, mert azt szeretném, hogy az adatokat fel lehessen osztani egy tanítókészlet és egy tanulókészlet között. A gépi tanulásban szükségünk van egy betanítási adathalmazra, hogy az algoritmus megtanulhassa az előrejelzéseket.

Bevittem a mean_squared_error-t is, hogy meghatározzuk a modellt és a matplotlib.pyplot könyvtárat arra az esetre, ha valamilyen vizualizációt szeretnénk készíteni.

Lehet, hogy nem használjuk mindet, de hasznos lehet, ezért mindet beraktam.

Lineáris regresszió Pythonban

Használt adatkészlet

Ezután vessünk egy gyors pillantást az adatkészletre. A df = pd.read_csv függvénnyel hoztam be a biztosítási adatkészletet, majd az adatokat álváltozókká konvertáltam a df1 = pd.get_dummies (df, drop_first = True) használatával .

Lineáris regresszió Pythonban

Ehhez hozzunk létre egy új cellát a billentyűzetünkön az Esc + B billentyűkombinációval, majd írjuk be a df.head parancsot az adatok kiértékeléséhez.

Megvan az életkor, a nem, a BMI, a gyermekek, a dohányos, a régió és a díjak, amelyeket meg akarunk jósolni függő változónkként. Ezek azok az adatok, amelyek a gépi tanulásra felkészületlenül érkeznek.

A gépi tanulásban nem fogunk tudni kategorikus változókat használni, például női, férfi, délnyugati és északnyugati változókat. Ezért az első dolog, amit tennünk kell, ha ez egy tipikus regressziós modell, az az, hogy a kategorikus változókat numerikus bemenetre fordítjuk. 

Lineáris regresszió Pythonban

Ehhez a pd.get_dummies függvényt használtam, majd ezt is numerikus oszlopmá változtattam úgy, hogy a df.head értéket df1.head értékre változtattam . Kattintson a Futtatás gombra, hogy megmutassa, hogyan néz ki.

Lineáris regresszió Pythonban

Most már láthatjuk ezt az új oszlopgyűjteményt, például sex_male , smoker_yes , region_northwest és így tovább. Az algoritmus automatikusan tudja, hogy ha 1, akkor igent, a 0 pedig nemet jelent.

Észrevehető, hogy nincs sex_female és region_northeast , mert nem akarjuk túlbonyolítani a modellt. Ezeket a drop_first = True függvénnyel ejtettük el .

A következő lépésben bevittem a LinearRegression függvényt, és elmentettem a változómodellre. 

X és Y változókat is létrehoztam az Y változóink előrejelzésére, majd bevittem az összes többi oszlopot a prediktorainkhoz ugyanazzal az adatkészlettel, amelyet korábban használtunk.

Lineáris regresszió Pythonban

Az X változóhoz a df1.drop ('charges', axis=1) értéket használtuk a töltések eldobására. Másrészt az Y változóhoz díjakra van szükségünk, ezért írjuk be a df1['charges'] -t .

Az alábbi függvényekkel a train_test_split függvénnyel tanító és tesztkészleteket készítettem X és Y számára is, és átadtam azokat az X és Y változóknak.

Ezenkívül a modell.fit segítségével illesztettem a képzési adatokat a modellünkhöz. Ez azt jelenti, hogy a lineáris regressziós modell megtanulja a betanítási adatokat. 

Lineáris regresszió Pythonban

Ezúttal vessünk egy pillantást előrejelzőinkre. Ezt az együtthatókon keresztül látjuk, mivel ezek azt írják le, hogy ezek a jellemzők vagy változók hogyan befolyásolják a díjakat.

Az is észrevehető, hogy a smoker_yes együttható száma nagyon közel van, ha összehasonlítjuk azzal a számmal, ami a kulcsfontosságú befolyásolókra és a modellünkben található. 

Egy olyan táblázat létrehozásához, amelyben a jellemzők és együtthatók vannak, a pd.DataFrame-et használtam , hogy bevigyem az együtthatókat a táblázatba, és létrehozzam a vizualitást.

Lineáris regresszió Pythonban

Lineáris regresszió Pythonban

Különböző modellek használata a kulcsfontosságú befolyásolók vizuális megjelenítéséhez

Különböző modellek használata is tanácsos a kulcsfontosságú befolyásolók megszerzéséhez az XGB.Regressor behozatalával . 

Amikor a modellt ábrázoljuk, az csak egy egyszerű lineáris regresszió; de amikor behoztuk az XGB.Regressor-t, sok paramétert használhatunk a modell optimalizálására.

Lineáris regresszió Pythonban

Ezeket a függvényeket is megismételtem az alábbi adatkeret létrehozásakor. Ezek az együtthatók nagyon eltérnek a lineáris regresszióban látottaktól.

Lineáris regresszió Pythonban

Ezzel a táblázattal a számok pontosak. Például, ha Ön dohányos, a díjai 23 787 dollárral nőnek. Ha van egy gyereke, az 472 dollárral fog növekedni, és így tovább.

Lineáris regresszió Pythonban

Ezek az influencerek azért is fontosak, mert tükrözik azt, ami a lineáris regressziós táblázaton található. Kicsit más, de nagyon közel áll egymáshoz, mert ezek a befolyásolók egyben összegeznek. Ez csak egy másfajta megközelítés a befolyásolókra.

Lineáris regresszió Pythonban

A lineáris regressziós analízis pontosságának tesztelése

Ezt követően szeretnénk látni a modellünk pontosságát, ezért az y_pred = model.predict (X_test) paramétert használtuk . Előállt egy jóslattal, hogy 5885.7-re leállt. 

Ez csak egy teszt adathalmaz, és hogy az előrejelzés jó vagy rossz, még értékelnünk kell. Ezt most nem fogjuk megtenni, mivel csak a legfontosabb befolyásolóinkra koncentrálunk. 

Lineáris regresszió Pythonban

Visszatérve a LuckyTemplateshez, megmutatom, hogyan fogalmaztam meg ezt nagyon egyszerűen. Ez egy külön táblázat, ahol láthatja a funkciókat és a befolyásolókat. 

Lineáris regresszió Pythonban

Ezt úgy tettem meg, hogy az Adatok átalakítása menüpontot választottam .

Lineáris regresszió Pythonban

Ezután megkettőztem az adatkészletemet, és létrehozhattam ezt a táblát. A kód megtekintéséhez és az általunk használt változók áttekintéséhez az Alkalmazott lépésekhez is léphetünk .

Lineáris regresszió Pythonban

Nyissuk meg duplán rákattintva. 

Lineáris regresszió Pythonban

Behoztuk a könyvtárainkat. Átalakítottuk egy gépi tanulási, előfeldolgozó adatkészletté, amely csak nullák és egyesek voltak. 

Ezenkívül behoztunk egy regressziós modellt, létrehoztuk az X-et és az Y-t, hogy illeszkedjenek az adatokhoz, majd elmentettük a táblát kimenetként. A modell elég jó, így nem használtam edzési tesztkészletet.

Egy másik dolog, amit megtettem, az volt, hogy az adatkészletet df -re váltottam , mert így egyszerűbb írni. Az adatkészlet az eredeti adatok változója.

Ezzel a táblázattal elmentettem kimenetként, ezért vannak ezek az együtthatók.

Lineáris regresszió Pythonban

Ha ezt vizuálisan szeretné megjeleníteni, kattintson a Bezárás és alkalmazás gombra .

Lineáris regresszió Pythonban

Most van egy . Feltételes formázást is használtam a pozitív és negatívumok megjelenítésére.

Lineáris regresszió Pythonban




Következtetés

Összefoglalva, a kulcsfontosságú befolyásolók megértése és a lineáris regresszió alkalmazása Pythonban hatékony eszköz lehet az adatok elemzéséhez és előrejelzéséhez.

Azáltal, hogy azonosítjuk azokat a kulcstényezőket, amelyek befolyásolják a függő változókat, és lineáris regressziót alkalmazunk ezek kapcsolatának modellezésére, jobban megérthetjük és megjósolhatjuk a jövőbeli eredményeket .

A Python hatékony könyvtárainak használatával könnyen megvalósítható a lineáris regresszió , és értelmes betekintést nyerhetünk az adatokból.

Minden jót,


A DAX Studio és a Tabular Editor telepítése a LuckyTemplates alkalmazásban

A DAX Studio és a Tabular Editor telepítése a LuckyTemplates alkalmazásban

Ismerje meg, hogyan töltheti le és telepítheti a DAX Studio és a Tabular Editor 3 alkalmazást, és hogyan konfigurálhatja őket a LuckyTemplates és az Excel programban való használatra.

LuckyTemplates alakzattérkép-vizualizáció a térbeli elemzéshez

LuckyTemplates alakzattérkép-vizualizáció a térbeli elemzéshez

Ez a blog tartalmazza a Shape Map vizualizációt a LuckyTemplates térbeli elemzéséhez. Megmutatom, hogyan használhatja hatékonyan ezt a vizualizációt annak funkcióival és elemeivel.

LuckyTemplates pénzügyi jelentések: az eredmények hozzárendelése a sablonokhoz minden egyes sorban

LuckyTemplates pénzügyi jelentések: az eredmények hozzárendelése a sablonokhoz minden egyes sorban

Ebben az oktatóanyagban egy egyedülálló ötletet mutatok be a pénzügyi jelentésekkel kapcsolatban, amely az eredmények hozzárendelését jelenti a LuckyTemplates-en belüli táblázatsablonok előre meghatározásához.

DAX-mértékek a LuckyTemplates-ben mértékelágazás használatával

DAX-mértékek a LuckyTemplates-ben mértékelágazás használatával

Hozzon létre DAX-mértékeket a LuckyTemplates alkalmazásban meglévő mértékek vagy képletek használatával. Ezt nevezem mértékelágazási technikának.

A legerősebb funkcióhívás a LuckyTemplatesben

A legerősebb funkcióhívás a LuckyTemplatesben

Ebben a blogban fedezze fel a LuckyTemplates adatkészletet, a leghatékonyabb függvényhívást, amely M- és DAX-függvények ezreit juttatja a keze ügyébe.

Adatmodellezési technikák a DAX-mérések megszervezéséhez

Adatmodellezési technikák a DAX-mérések megszervezéséhez

A mai oktatóanyagban megosztok néhány adatmodellezési technikát a DAX-mérések jobb rendszerezéséhez a hatékonyabb munkafolyamat érdekében.

LuckyTemplates pénzügyi irányítópult: Teljes táblázat testreszabási tippek

LuckyTemplates pénzügyi irányítópult: Teljes táblázat testreszabási tippek

A LuckyTemplates egy nagyszerű eszköz a pénzügyi jelentésekhez. Itt található egy oktatóanyag, amely bemutatja, hogyan hozhat létre személyre szabott táblázatokat a LuckyTemplates pénzügyi irányítópultjához.

A Power Query nyelvi folyamatának bevált gyakorlatai

A Power Query nyelvi folyamatának bevált gyakorlatai

Ez az oktatóanyag megvitatja a Power Query nyelvi folyamatot, és azt, hogyan segíthet zökkenőmentes és hatékony adatjelentések létrehozásában.

LuckyTemplates egyéni ikonok | PBI vizualizációs technika

LuckyTemplates egyéni ikonok | PBI vizualizációs technika

Az egyik kedvenc technikámról fogok beszélni a LuckyTemplates egyéni ikonok körül, amely dinamikusan használja az egyéni ikonokat a LuckyTemplates vizualizációkban.

LuckyTemplates táblázatok létrehozása UNION & ROW függvény használatával

LuckyTemplates táblázatok létrehozása UNION & ROW függvény használatával

Ebben a blogban megmutatom, hogyan hozhat létre LuckyTemplates táblázatokat olyan képlet segítségével, amely egyesíti az UNION és a ROW függvényt.