xaashida Notepad-cheat ee degdega ah ee xogta loo sameeyo

Inta badan dadka galaya goobta Sayniska Xogta waxay leeyihiin wax ka yar rajooyinka dhabta ah ee waxa iyaga sugaya. Dad badan ayaa u maleynaya in hadda ay qori doonaan shabakadaha neerfaha ee qabow, ay abuuri doonaan caawiye cod ka Iron Man, ama garaaci doonaan qof kasta oo ku jira suuqyada maaliyadeed.
Laakin shaqee Data Saynis yahanku waa xog ku dhisan, mid ka mid ah dhinacyada ugu muhiimsan uguna waqti badan ayaa ah habaynta xogta ka hor inta aan lagu quudin shabakad neerfaha ah ama si gaar ah u falanqayn.

Maqaalkan, kooxdeenu waxay ku qeexi doontaa sida aad si dhakhso leh oo sahlan ugu socodsiin karto xogta adigoo raacaya tilmaan-tallaabo iyo kood. Waxaan isku daynay inaan ka dhigno koodka mid dabacsan oo loo isticmaali karo xog-ururinta kala duwan.

Xirfadlayaal badan ayaa laga yaabaa inaysan ka helin wax aan caadi ahayn maqaalkan, laakiin bilawga waxay awoodi doonaan inay bartaan wax cusub, qof kasta oo muddo dheer ku hamiyay inuu sameeyo buug gaar ah oo loogu talagalay habaynta xogta degdegga ah iyo habaysan ayaa koobi kara koodka oo u qaabayn kara naftiisa, ama ka soo deji buugga xusuus qorka ee dhammaatay ee Github.

Waxaan helnay xogta. Maxaa la sameeyaa marka xigta?

Marka, halbeegga: waxaan u baahanahay inaan fahamno waxa aan la macaamileyno, sawirka guud. Si tan loo sameeyo, waxaan isticmaalnaa pandas si aan si fudud u qeexno noocyada xogta ee kala duwan.

import pandas as pd #ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ pandas
import numpy as np  #ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ numpy
df = pd.read_csv("AB_NYC_2019.csv") #Ρ‡ΠΈΡ‚Π°Π΅ΠΌ датасСт ΠΈ записываСм Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ df

df.head(3) #смотрим Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹Π΅ 3 строчки, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ выглядят значСния

xaashida Notepad-cheat ee degdega ah ee xogta loo sameeyo

df.info() #ДСмонстрируСм ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°Ρ…

xaashida Notepad-cheat ee degdega ah ee xogta loo sameeyo

Aynu eegno qiimayaasha tiirka:

  1. Tirada xariiqyada tiir kasta miyay u dhigantaa tirada guud ee xariiqyada?
  2. Waa maxay nuxurka xogta ku jirta tiir kasta?
  3. Tiirkee ayaan rabnaa inaan beegsanno si aan saadaalin ugu samayno?

Jawaabaha su'aalahan waxay kuu oggolaanayaan inaad falanqeyso xog-ururinta oo aad qiyaas ahaan u sawirto qorshe ficilladaada xiga.

Sidoo kale, si qoto dheer u eegno qiyamka ku jira tiir kasta, waxaan isticmaali karnaa pandas qeexitaanka () function. Si kastaba ha ahaatee, faa'iido darrada shaqadani waa in aysan bixin macluumaadka ku saabsan tiirarka leh qiimaha xargaha. Hadhow ayaan la macaamili doonaa.

df.describe()

xaashida Notepad-cheat ee degdega ah ee xogta loo sameeyo

Aragtida sixirka

Aynu eegno halka aynaan wax qiimo ah ku lahayn haba yaraatee:

import seaborn as sns
sns.heatmap(df.isnull(),yticklabels=False,cbar=False,cmap='viridis')

xaashida Notepad-cheat ee degdega ah ee xogta loo sameeyo

Tani waxay ahayd muuqaal gaaban oo xagga sare ah, hadda waxaan u gudbi doonaa waxyaabo badan oo xiiso leh

Aynu isku dayno inaan helno oo, hadday suurtagal tahay, ka saarno tiirarka leh qiimaha kaliya ee safafka oo dhan (ma saameyn doonaan natiijada sinaba):

df = df[[c for c
        in list(df)
        if len(df[c].unique()) > 1]] #ΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΡ‹Π²Π°Π΅ΠΌ датасСт, оставляя Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… большС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния

Hadda waxaan ka ilaalinaa nafteena iyo guusha mashruucayaga khadadka nuqul ka mid ah (khadka ay ku jiraan macluumaadka isku midka ah ee isku xiga ee mid ka mid ah khadadka jira):

df.drop_duplicates(inplace=True) #Π”Π΅Π»Π°Π΅ΠΌ это, Ссли считаСм Π½ΡƒΠΆΠ½Ρ‹ΠΌ.
                                 #Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ с самого Π½Π°Ρ‡Π°Π»Π° Π½Π΅ стоит.

Waxaan u kala qaybinnaa xogta laba: mid leh qiyam tayo leh, iyo mid kale oo tiro leh

Halkan waxaan u baahan nahay caddayn yar: haddii khadadka leh xogta maqan ee xogta tayada iyo tirada aan si aad ah ula xiriirin midba midka kale, ka dibna waxaan u baahan doonaa inaan go'aan ka gaarno waxa aan allabaryo - dhammaan khadadka xogta maqan, kaliya qayb ka mid ah. ama tiirar gaar ah. Haddii khadadka ay isku xiran yihiin, markaa waxaan xaq u leenahay inaan u qaybinno xogta laba qaybood. Haddii kale, waxa aad marka hore u baahan doontaa in aad wax ka qabato xadhkaha aan isku xidhin xogta maqan ee tayo iyo tiraba, ka dibna kaliya waxa aad u qaybinaysaa kaydka xogta laba.

df_numerical = df.select_dtypes(include = [np.number])
df_categorical = df.select_dtypes(exclude = [np.number])

Waxaan tan u sameynaa si aan noogu fududeyno in aan farsameyno labadan nooc ee xogta - hadhow waxaan fahmi doonaa sida ay tani nolosheenna u fududeyneyso.

Waxaan ku shaqaynaa xogta tirada

Waxa ugu horreeya ee ay tahay in aan samayno waa in aan go'aamino in ay jiraan "Tiirarka basaaska" ee xogta tirada. Waxaan ugu yeernaa tiirarkan sababtoo ah waxay isu soo bandhigaan xog tiro badan, laakiin waxay u dhaqmaan sidii xog tayo leh.

Sideen ku qeexnaa iyaga? Dabcan, wax walba waxay ku xiran yihiin nooca xogta aad falanqeynayso, laakiin guud ahaan tiirarka noocan oo kale ah waxay yeelan karaan xog yar oo gaar ah (ee gobolka 3-10 qiimaha gaarka ah).

print(df_numerical.nunique())

Marka aan aqoonsanno tiirarka basaaska, waxaan ka wareejin doonaa xogta tirada una guuri doonaa xogta tayada leh:

spy_columns = df_numerical[['ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1', 'ΠΊΠΎΠ»ΠΎΠΊΠ°2', 'ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3']]#выдСляСм ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ-ΡˆΠΏΠΈΠΎΠ½Ρ‹ ΠΈ записываСм Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ dataframe
df_numerical.drop(labels=['ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1', 'ΠΊΠΎΠ»ΠΎΠΊΠ°2', 'ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3'], axis=1, inplace = True)#Π²Ρ‹Ρ€Π΅Π·Π°Π΅ΠΌ эти ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΈΠ· количСствСнных Π΄Π°Π½Π½Ρ‹Ρ…
df_categorical.insert(1, 'ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1', spy_columns['ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1']) #добавляСм ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ-шпион Π² качСствСнныС Π΄Π°Π½Π½Ρ‹Π΅
df_categorical.insert(1, 'ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2', spy_columns['ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2']) #добавляСм Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ-шпион Π² качСствСнныС Π΄Π°Π½Π½Ρ‹Π΅
df_categorical.insert(1, 'ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3', spy_columns['ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3']) #добавляСм Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ-шпион Π² качСствСнныС Π΄Π°Π½Π½Ρ‹Π΅

Ugu dambeyntii, waxaan si buuxda u kala saarnay xogta tirada iyo xogta tayada oo hadda waxaan si sax ah ugu shaqeyn karnaa. Waxa ugu horreeya waa in la fahmo halka aan ku leenahay qiyamka madhan (NaN, iyo xaaladaha qaarkood 0 waxaa loo aqbali doonaa qiyam madhan).

for i in df_numerical.columns:
    print(i, df[i][df[i]==0].count())

Halkaa marka ay marayso, waxaa muhiim ah in la fahmo tiirarka eber ee laga yaabo inay muujinayaan qiyamka maqan: tani ma waxay sabab u tahay sida xogta loo ururiyay? Mise waxay la xidhiidhi kartaa qiyamka xogta? Su'aalahan waa in looga jawaabaa kiis-kiis.

Marka, haddii aan wali go'aansanno in laga yaabo in aan xogta ka maqnaano halka eber ka jiro, waa in aan ku beddelnaa eber NaN si aan u fududeyno in aan xogtan luntay hadhow ku shaqeyso:

df_numerical[["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° 1", "ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° 2"]] = df_numerical[["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° 1", "ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° 2"]].replace(0, nan)

Hadda aan aragno halka xogta nooga maqan:

sns.heatmap(df_numerical.isnull(),yticklabels=False,cbar=False,cmap='viridis') # МоТно Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ df_numerical.info()

xaashida Notepad-cheat ee degdega ah ee xogta loo sameeyo

Halkan qiimayaasha ku jira tiirarka maqan waa in lagu calaamadiyaa jaalaha. Oo hadda madadaalo ayaa bilaabmaysa - sida loola macaamilo qiyamkan? Miyaan tirtiraa safafka leh qiyamkan ama tiirarkan? Ama ka buuxi qiyamkan madhan qaar kale?

Halkan waxaa ah jaantus qiyaas ah oo kaa caawin kara inaad go'aansato waxa, mabda'a ahaan, lagu samayn karo qiyam madhan:

xaashida Notepad-cheat ee degdega ah ee xogta loo sameeyo

0. Ka saar tiirarka aan loo baahnayn

df_numerical.drop(labels=["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2"], axis=1, inplace=True)

1. Tirada madhan ee tiirkan miyay ka badan tahay 50%?

print(df_numerical.isnull().sum() / df_numerical.shape[0] * 100)

df_numerical.drop(labels=["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2"], axis=1, inplace=True)#УдаляСм, Ссли какая-Ρ‚ΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ‚ большС 50 пустых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

2. Tirtir khadadka qiimaha madhan

df_numerical.dropna(inplace=True)#УдаляСм строчки с пустыми значСниями, Ссли ΠΏΠΎΡ‚ΠΎΠΌ останСтся достаточно Π΄Π°Π½Π½Ρ‹Ρ… для обучСния

3.1. Gelida qiime aan toos ahayn

import random #ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ random
df_numerical["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°"].fillna(lambda x: random.choice(df[df[column] != np.nan]["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°"]), inplace=True) #вставляСм Ρ€Π°Π½Π΄ΠΎΠΌΠ½Ρ‹Π΅ значСния Π² пустыС ΠΊΠ»Π΅Ρ‚ΠΊΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

3.2. Gelida qiime joogto ah

from sklearn.impute import SimpleImputer #ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ SimpleImputer, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ значСния
imputer = SimpleImputer(strategy='constant', fill_value="<Π’Π°ΡˆΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ здСсь>") #вставляСм ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ SimpleImputer
df_numerical[["новая_ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1",'новая_ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2','новая_ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3']] = imputer.fit_transform(df_numerical[['ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1', 'ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2', 'ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3']]) #ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ это для нашСй Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹
df_numerical.drop(labels = ["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3"], axis = 1, inplace = True) #Π£Π±ΠΈΡ€Π°Π΅ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ со старыми значСниями

3.3. Geli celceliska ama qiimaha ugu badan

from sklearn.impute import SimpleImputer #ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ SimpleImputer, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ значСния
imputer = SimpleImputer(strategy='mean', missing_values = np.nan) #вмСсто mean ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ most_frequent
df_numerical[["новая_ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1",'новая_ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2','новая_ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3']] = imputer.fit_transform(df_numerical[['ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1', 'ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2', 'ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3']]) #ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ это для нашСй Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹
df_numerical.drop(labels = ["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3"], axis = 1, inplace = True) #Π£Π±ΠΈΡ€Π°Π΅ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ со старыми значСниями

3.4. Geli qiimaha lagu xisaabiyay qaab kale

Mararka qaarkood qiyamka waxaa lagu xisaabin karaa iyadoo la isticmaalayo moodooyinka dib-u-celinta iyadoo la isticmaalayo moodooyinka maktabadda sklearn ama maktabadaha kale ee la midka ah. Kooxdayadu waxay u qoondayn doonaan maqaal gaar ah oo ku saabsan sida tan loo samayn karo mustaqbalka dhow.

Haddaba, hadda, sheekadii ku saabsanayd xogta tirada ayaa hakad geli doonta, sababtoo ah waxaa jira waxyaabo kale oo badan oo ku saabsan sida ugu wanaagsan ee diyaarinta xogta iyo u diyaarinta hawlaha kala duwan, iyo waxyaabaha aasaasiga ah ee xogta tirada ayaa lagu xisaabtamay qodobkan, iyo hadda waa waqtigii loo soo noqon lahaa xogta tayada leh, taas oo aan dhowr tallaabo dib uga soo celinnay kuwii tirada badnaa. Waxaad u bedeli kartaa buug-yarahaan sida aad rabto, adigoo la qabsanaya hawlo kala duwan, si diyaarinta xogta ay u socoto si degdeg ah!

Xogta tayada leh

Asal ahaan, xogta tayada leh, habka One-hot-encoding waxa loo isticmaalaa in laga soo habeeyo xadhig (ama shay) tiro. Kahor intaanan u gudbin bartan, aan isticmaalno jaantuska iyo koodka sare si aan ula macaamilno qiyamka madhan.

df_categorical.nunique()

sns.heatmap(df_categorical.isnull(),yticklabels=False,cbar=False,cmap='viridis')

xaashida Notepad-cheat ee degdega ah ee xogta loo sameeyo

0. Ka saar tiirarka aan loo baahnayn

df_categorical.drop(labels=["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2"], axis=1, inplace=True)

1. Tirada madhan ee tiirkan miyay ka badan tahay 50%?

print(df_categorical.isnull().sum() / df_numerical.shape[0] * 100)

df_categorical.drop(labels=["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2"], axis=1, inplace=True) #УдаляСм, Ссли какая-Ρ‚ΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° 
                                                                          #ΠΈΠΌΠ΅Π΅Ρ‚ большС 50% пустых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

2. Tirtir khadadka qiimaha madhan

df_categorical.dropna(inplace=True)#УдаляСм строчки с пустыми значСниями, 
                                   #Ссли ΠΏΠΎΡ‚ΠΎΠΌ останСтся достаточно Π΄Π°Π½Π½Ρ‹Ρ… для обучСния

3.1. Gelida qiime aan toos ahayn

import random
df_categorical["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°"].fillna(lambda x: random.choice(df[df[column] != np.nan]["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°"]), inplace=True)

3.2. Gelida qiime joogto ah

from sklearn.impute import SimpleImputer
imputer = SimpleImputer(strategy='constant', fill_value="<Π’Π°ΡˆΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ здСсь>")
df_categorical[["новая_колонка1",'новая_колонка2','новая_колонка3']] = imputer.fit_transform(df_categorical[['колонка1', 'колонка2', 'колонка3']])
df_categorical.drop(labels = ["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3"], axis = 1, inplace = True)

Markaa, waxaanu ugu dambayntii gacanta ku haynay xogta tayada leh ee nulls. Hadda waa waqtigii lagu samayn lahaa hal-kuleed-ku-dhejin qiimayaasha ku jira xogtaada. Habkan waxaa badanaa loo isticmaalaa si loo hubiyo in algorithm-kaagu uu wax ka baran karo xogta tayada sare leh.

def encode_and_bind(original_dataframe, feature_to_encode):
    dummies = pd.get_dummies(original_dataframe[[feature_to_encode]])
    res = pd.concat([original_dataframe, dummies], axis=1)
    res = res.drop([feature_to_encode], axis=1)
    return(res)

features_to_encode = ["ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°1","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°2","ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°3"]
for feature in features_to_encode:
    df_categorical = encode_and_bind(df_categorical, feature))

Markaa, ugu dambayntii waxaanu dhammaynay habaynta xogta tayada iyo tirada gaarka ah - wakhtiga dib loogu daro

new_df = pd.concat([df_numerical,df_categorical], axis=1)

Kadib marka aan isku geyno xogta xogta mid mid ah, waxaan ugu dambeyntii isticmaali karnaa beddelka xogta anagoo adeegsanayna MinMaxScaler ee maktabadda sklearn. Tani waxay ka dhigi doontaa qiyamkayaga u dhexeeya 0 iyo 1, kaas oo ku caawin doona marka la tababarayo qaabka mustaqbalka.

from sklearn.preprocessing import MinMaxScaler
min_max_scaler = MinMaxScaler()
new_df = min_max_scaler.fit_transform(new_df)

Xogtan hadda waxay diyaar u tahay wax kasta - shabakadaha neerfaha, algorithms-ka caadiga ah ee ML, iwm.!

Maqaalkan, ma aanaan ku xisaabtamin la shaqaynta xogta taxanaha wakhtiga, maadaama xogtan oo kale waa inaad isticmaashaa farsamooyin wax-qabad oo kala duwan, iyadoo ku xidhan hawshaada. Mustaqbalka, kooxdayadu waxay mawduucan u qoondayn doonaan maqaal gaar ah, waxaanan rajaynaynaa inay awood u yeelan doonto inay noloshaada u keento wax xiiso leh, cusub oo waxtar leh, sida kan oo kale.

Source: www.habr.com

Add a comment