×

We gebruiken cookies om LingQ beter te maken. Als u de website bezoekt, gaat u akkoord met onze cookiebeleid.


image

Tölvunarfræði. María Óskarsdóttir - fyrirlestrar, Vinna með gögn í Canvas

Vinna með gögn í Canvas

Sem sagt eru inni á Canvas, tvö notebook. Ég ætla að fara bara í gegnum annað ég hvet ykkur til að kíkja á hitt. Það er svona annar fókus í því en, en, hérna, hérna er þetta sem við erum búin að vera að tala um í dag, sem sagt um það hvernig maður getur möndlað gögnin með melt og pívot til þess að, sem sagt þau, þannig að taflan lúkki rétt og svo hins vegar ýmiss konar, hérna, skipanir til þess að díla við missing values og útlaga og, og slíkt. Þannig að ef við bara byrjum hérna að keyra, sem sagt þetta sem við þurfum og þið sjáið við erum með allt þetta sama og venjulega, pandas og numpy. Við erum með eitthvað sem heitir datetime sem við notum til að díla við, hérna, díla við dagsetningar og svo náttúrulega plottið. Og þessi gögn finnið þið líka inni á Canvas í zip skrá. Þannig að byrjum á að lesa inn, hérna, þessi gögn frá Pew Research Center, um sem sagt innkomu og trúarbrögð. Sjáum það þetta sem við sáum áðan í, hérna, í glærunum þarna erum við sem sagt með fjölda eftir trúarbrögðum miðað við tekjur. Þannig að við erum með, dálkarnir tákna mismunandi tekjumörk. Svo sjáum við fjöldann sem tilheyrir hverju trúarbragði og eins og við sáum áðan þá er þetta dæmi um það að við erum með einhverjar upplýsingar í dálkaheitunum, sem sagt tekjutölurnar hérna. Og þetta eru upplýsingar sem við mundum vilja nota, hafa meira [UNK]. Við viljum geta notað þessar upplýsingar á einhvern hátt. Þannig að til þess að geta, að gera það þá, hérna, viljum við breyta töflunni með því að nota þetta melt fall. Hérna, það sem, eins og við nefndum áðan að við tökum töfluna okkar, við viljum halda eftir þessum religion dálki. Hann á að halda sér, en við ætlum að gera eitthvað við alla hina, sem sagt fyllimengið af dálkum og við viljum að það, sem sagt, varpist já, og, og, hérna, og nýi dálkurinn á að heita income eða tekjur og svo kemur nýr dálkur þar sem að þar sem að gildin í töflunni koma og hann á að heita sem sagt frequency. Og hérna og svo er hann bara eitthvað að sort-a þetta eftir trúarbrögðum. Þannig að ef við keyrum það þá sjáið þið að hún lítur svona út þegar við erum búin að umturna þessu. Hérna, það er voðalega gott bara að stara á þetta. Þetta alveg svoldið svona smá hérna flókið stundum að, þú veist, fatta nokkuð hvað er að gerast en hérna, sem sagt ég fann ágætis útskýringu hérna ég skal setja þá linkinn inn á þetta, á sem sagt Canvas líka, það sem er verið að tala um muninn á pivot og melt og hvernig það virkar. En basically það sem við erum að gera við erum að taka þessa, hérna, dálkana og aðeins bara umturna þeim þannig að við förum úr þessu format-i og í þetta langa format í þessu tilfelli. Og hérna erum við með lögin, vinsældalistann. Ef við lesum það inn þá lítur þetta svona út og þið sjáið þetta er svona alveg svolítið skrýtið af því að við erum með hérna hvenær það kom inn á listann og hvenær það var hæst á listanum og svo erum með hérna sjáið þið dálkaheitin hérna: x first week, x second week svo erum við bara með fullt af einhverjum NaN þannig að þetta eru svona eitthvað, eitthvað svona ekki ideal. Þannig að hérna aftur ætlum við að nota melt. Og við byrjum á að ákveða hvaða breytur melt fallið á að, sem sagt halda og við viljum halda þessum dálkum hérna, year, artist, inverted, bla bla bla, track time, genre, date entered og date peaked. Þeir allir eigi að halda sér kjurir en restin á að varpast svona á að melt-ast. Og, og, hérna, þannig að ef við bara keyrum þetta, já, og svo bætir hann líka við hérna, nei, fyrirgefðu hann, sem sagt bara melt-ar þetta. Hann heldur þessum dálkum sem eru nefndir hérna í þessu id-vars og svo melt-ar hann og þá lítur hún svona út þannig að þið sjáið að þessir dálkar sem við vildum halda þeir eru hérna allir nema allt sem var í restinni sem að var, sem sagt héðan, allt sem er hér er bara núna orðið að tveimur dálkum, það er að segja annar dálkurinn heitir week. Þetta hérna: first week, second week, sem við sáum, sem við sáum og seinasti dálkurinn hann heitir rank þar sem að tölurnar í þessum dálkum eru núna komnar. Og svo getum náttlega tekið þetta og tekið aðeins til í þessu af því þið sjáið að, sem sagt gildin hérna í þessum week dálki er náttúrlega svolítið ljót, við getum ekki, hérna, gert neitt við þetta svona þetta er svolítið skrítið. Þannig að það sem við gerum til dæmis er að nota svona regular expression, til þess að taka út bara töluna og svo erum við aðeins að manipulate-a líka dagsetninguna. Búa til hérna nýjan dálk sem heitir date og aðeins að möndla hann þannig að við fáum út eitthvað sem lítur svona út. Já, ég veit ekki af hverju þetta er svona skrítið hér þetta á ekki að vera svona. Þetta ætti raunverulega bara að enda hér. Skrítið jæja. Að þá sem sagt sjáið þið líka hérna í week er bara talan það er ekkert, hérna, þú veist, allt þetta crap Það er bara talan sjálf. Ókei. Já, og svo ætlum við að skipta þessu líka í tvær töflur. Aðra sem er bara með lögunum og hin sem er síðan bara með í hvaða sæti þau voru. Þannig að við getum hérna í fyrsta lagi búið til töfluna með bara með lögunum. Hún mundi líta svona út. Þannig að við veljum bara dálkanna sem við viljum. Við droppum duplicates af því þið sjáið náttúrulega hér að sama lagið er að koma rosalega oft fyrir. Við bara pössum það að hvert entry kemur bara fyrir einu sinni og, og hérna búum til sem sagt hérna id dálk og eitthvað og þá mundi hin taflan sem er með, hérna, því sæti sem lögin eru í, líta svona út þar sem við veljum þá árið og, já, artist-ann, lagið, tímann og genre-an og svo, hérna, breytum við þessu hérna. Ókei, og svo erum við með berkladæmið okkar sem við sáum líka í glærunum þar sem við vorum með fjölda berklasjúklinga í mismunandi löndum mismunandi árum eftir kyni og aldri og þið munið að hérna erum við líka mjög [HIK:flók] flókna samsetningu af kyni og aldri í dálka heitunum og aftur notuð við melt þannig að melt er svona frekar mikið galdra fall hér, að við viljum halda eftir country og year en við viljum breyta öllu hinu, við viljum við viljum varpa því öllu og við viljum að, sem sagt þessir gaurar þeir heiti cases og gildin heiti sex and age. Þannig að við byrjum á að breyta þessu, nei, fyrirgefðu nú erum við búin að [HIK:skip], nei, við voru búin að víxla þessu. Þetta var alltaf víxlað áðan, sem sagt þá heita, hérna, dálkarnir eiga að heita sex and age og cases á að heita, gildin eiga að heita cases. Takið eftir því, value-name og var-name. Og þá lítur þetta svona út nema ennþá er náttúrulega þetta hérna, þessi dálkur sex and age svolítið ómeðfærilegur þannig að við notum regular expressions, sjáið þið hérna, hérna, extract-a eitthvað út úr honum til þess að breyta þessum hérna dálki í einn dálk sem er bara með kyni og dálk sem er með sem sagt aldrinum. Þannig að við keyrum þetta. Nei, ekki þetta. Ég ætla að byrja upp á nýtt. Sorry. Svona, og svona. Þennan ætla ég að keyra. Ókei. Þá sjáið þið hérna að við erum með kynið. Við erum með lægri mörkin á aldrinum, efri mörkin á aldrinum og, sem sagt aldurs, raunverulega, bilið þannig að þessir age-lower og age-upper er sem sagt þeir saman búa til þennan age hérna. Þannig að þið sjáið sem sagt að þessi hérna temp data frame er bara sex and age dálkurinn úr þessum hann er bara þessi hérna dálkur, svo extröktum við sem sagt þetta sem streng og, og hlutina úr honum og búum til þá, sem sagt nýja, þrjá nýja dálka sem líta svona út. Og svo getum við bætt honum aftur við upprunalegu töflunna svona. Þannig að við erum aftur komin með sem sagt landið árið fjöldann og svo, sem sagt kyn og aldur. Þannig, núna lítur þetta út á svona einhverju formi sem er svolítið þægilegra. Ókei, og svo erum við með veðrið munið þið þessa hérna ljótu töflu sem var bara full af einhverju tómu og við vildum breyta henni og þið munið líka hérna þá vorum við, sem sagt árið og svo voru með mánuðinn og svo vorum dagana hérna í dálka heitunum sem er náttúrulega hálfkjánalegt en þetta getur náttúrulega bara verið að þessir sem eru að eru að safna þessum gögnum að fyrir hann er best að hafa þetta svona og þess vegna vinnur hann þetta svona. En en fyrir okkur sem viljum svo vinna eitthvað upp úr þessu þá er þetta alveg vonlaust þannig að við, við förum í það að, að, hérna, umturna þessu. Aftur notum við melt og við viljum að halda id, year, month og element en við viljum varpa, hérna, þessum. Varpa restinni og það á að heita day raw. Þannig að day raw, sjáið þið hérna, er þessi nöfn hérna og við erum ekki með neitt value name, sem þýðir það að við bara fáum default gildi hérna sem er bara value þannig að value name er bara value það er sem sagt í default-ið og svo viljum við út úr þessu hérna extract-a bara einn inn af því það er dagurinn, við erum ekki, þetta d skiptir engu máli það er hvort eð er alltaf það sama þannig að við getum alveg eins hent því í burtu. Þannig að við notum regular expression til að henda d-inu í burtu og við látum, hérna, breytum þessu í, í þetta. Sem sagt að id-ið er bara, sem sagt þessi. Þetta er alltaf það sama. Þetta var sem sagt mælitæki sem þeir notuðu eða eitthvað. Og svo það sem við erum að gera hér er að nota svona lambda expression til þess að breyta þessum strengjum, þetta eru strengir í í numeric, sem sagt pd to-numeric þannig að þetta er allt saman, allt saman strengir og við viljum þetta séu tölur. Þannig að ef við skoðum þetta núna þá sjáið þið hérna að við erum komin með, þetta er núna sem sagt, já, breytist ekkert, ekkert hér en við sjáum að, hérna, day er bara einn í staðin fyrir að vera D einn þá er það bara einn og svo sjáum við, já, þetta er svo bara tölur hérna. Við sjáum það hér. En svo að gera hér er að taka þessa þrjá dálka year, month og day og búa til date. Við viljum að sé bara date, sem sagt að data type-ið sé date þannig við getum reiknað með þeim eins og þeir séu dagar, en þá getur maður sagt: þú ert ein dagsetning, mínus öðrum dagsetning og fengið út fjöldann á dögum milli hentugt að vera með þetta sem date. Þannig að við skrifum hérna lítið fall sem að, hérna, breytir þessum tveimur dálkum í einn dálk sem heitir dagsetning og þá fáum við út eitthvað sem lítur svona út. Þannig að við erum með, hérna, mælitækið, við erum með max, hibben minn, hitann og gildi sem að mældist á þessum degi. Og svo þegar við erum búin að þessu þá viljum við unmelt-a þetta. Og andstaðan við melt heitir pivot. Í melt þá erum við að breyta töflum og gera þær langar og þegar við erum að pivot-a erum við að gera þær breiðar. Þannig að það virkar svipað, eða, þú veist, bara andstætt. Í þessu tilfelli þá viljum við halda eftir æti í beit og það er þetta sem við viljum, það sem við viljum breiða úr. Þannig að við breiðum úr þessu. Þá sjáum við hérna að við fáum út, sem sagt að töfluna sem lítur svona út. Við erum með mælitæki um dagsetninguna og erum með tvo dálka hérna, t Max og t min þannig að í staðinn fyrir að vera með, hérna, tvö mismunandi gildi alltaf hér í element, þá breytast þeir í tvo nýja dálka. Þannig að eins og ég segi þetta pivot er svona andstæð aðgerð við melt. Það gerir töflurnar breiðar á meðan melt gerir töflurnar langar. Ókei og svo vorum við með baby names in illinois, þið munið eftir því. Það voru sem sagt tvær mismunandi töflur í tveimur mismunandi skrám og við viljum sameina þær. Skrifum hérna smá lítið fall sem að, hérna, extract-ar árið úr, úr, úr, hérna, skráarheitinu. Þannig að þið sjáið hérna að við erum með búum til þennan hérna þessa hérna breytu sem heitir all files sem er með path-inn á skránni og svo getur skráin heitið mismunandi sjáið hérna erum við með svona expression þar sem við getum sett inn mismunandi gildi fyrir skráarheitið og svo bara lúppum við yfir alla fælana í þessari hérna möppu og finnum allar, alla fæla sem hafa þetta format sem heita eitthvað, sem sagt eru á þessu format-i og í okkar möppu erum við með, sem sagt tvær skrár, annars vegar tvö þúsund og fjórtán og hins vegar tvö þúsund og fimmtán og þannig að þessi for loop-a finnur báðar þær skrár og les þær inn og sameinar þær, sem sagt hérna, concat og, og, hérna, sem sagt, og þetta þá mundi vera byrjunin á þeirri skrá. Þetta er mjög sniðugt hérna að nota þetta hérna, sem sagt eitthvað svona regular expression og svo loop-a yfir allar skrár í möppunni, ef þú ert með margar skrár sem eru mjög svipaðar, sem sem er mjög oft það sem við erum að díla við, þá er þetta mjög góð lausn til þess. Ókei, eru einhverjar spurningar um melt og pivot og svona breiðar og, og, hérna, mjóar töflur? Eins og ég segi þá er bara gott að aðeins stara á þetta til þess að átta sig á því hvernig þetta virkar. En annars þá eru nokkur orð um data preprocessing Ég ætla að nota hérna, sem sagt þetta wheat prices sem við vorum með á seinasta föstudag og, og hérna og byrjum bara á því að lesa þau inn og við sjáum það að við erum með, sem sagt tuttugu og tvö þúsund, átta hundruð níutíu og níu observation-ir og átta breytur. Svo getum við tékkað hvort það sé einhver, hérna, sem sagt einhver missing value hvort það vanti einhverstaðar eitthvað og þetta er einfaldasta kall til þess. En þið sjáið það að [UNK] ef við lesum það inn þá bara fáum við út töfluna með logical gildum, fullt af false, false, false, svo eru hérna einhver nokkur, nokkur sem eru true þannig að við getum verið viss um það að hérna eru einhver missing en þetta er náttúrulega ekkert voðalega góð aðferð þannig að við getum beitt öðrum aðferðum. Þið sjáið til dæmis hérna. Ef við erum með þetta is null aftur á hérna data frame-inu okkar svo við gerum punktur values punktur ravel punktur sum þá fáum við einfaldlega út fjöldann af missing gildum í þessari töflu. Ef við sleppum þessu values ravel og gerum bara punktur sum þá gætum við séð eftir dálkum hvað eru mörg missing gildi. Þannig að við sjáum hérna núna mjög skýrt og greinilega að í dálkinum low q eru tíu þúsund fimmtíu og fimm, tíu þúsund fimm hundruð fimmtíu og sjö missing gildi. Ókei, og svo getum við, ef við viljum bara, sem sagt fjarlægt þessi missing gildi úr töflunni okkar og þá getum við notað þetta fall sem heitir drop NA þar sem að axis stendur fyrir hvort við eigum að gera eftir röðum eða dálkum þannig að axis jafnt og núll eru raðir axis jafnt einn eru dálkar. Og svo erum þetta how sem getur annað hvort verið any eða all og sem sagt ef við erum með all hérna þá þýðir það raunverulega að við droppum röðinni í þessu tilfelli ef að það vantar alla, ef öll röðin er með NA þá hendum við henni í burtu. En við vitum það að það er bara NA hjá okkur í low q þannig að það er hvergi það ástand að öll röðin er NA það er bara getur bara verið í þessum hérna dálki. Þannig að við setjum inn any í staðinn fyrir all það þýðir bara að eitthvert af gildunum þarf að vera NA og þá hendum við út allri röðinni. Eins ef við mundum setja hérna inn einn í staðin fyrir núll. Þá erum við að segja honum að þú átt að henda út öllum dálkum þar sem er eitthvað missing value. En ég ætla að gera þetta svona af því að ég vil ekki henda út dálkinum, og eins og ég segi það er bara eitthvað sem maður verður að ákveða í hvert skipti hvað maður ætlar að gera. Ákvörðun sem maður tekur, byggir bara á gagnasafninu og hvernig við ætlum að nota það. En hérna ætla ég að gera þetta svona. Ókei, og þá sjáið þið að þegar við erum búin að henda þeim öllum í burtu þá erum við með tólf þúsund raðir eftir en við vorum með tuttugu og tvö þúsund raðir, við erum búin að henda burtu þessum hérna tíu þúsund röðum. Ókei, en við getum líka impute-að við getum bætt inn, sem sagt þessum missing gildum í staðinn fyrir að henda þeim í burtu, og þá höfum við fallið sem heitir fill na sem tekur hérna argument hvað við viljum fylla inn þannig að hérna, ef við viljum fylla inn núll í staðinn fyrir það sem vantar, þá myndum við setja hérna núll. Við getum sett inn til dæmis eitthvað annað líka, til dæmis mean eða median eða hvað sem er þannig að við getum sett inn núll til dæmis. Svona, þá sjáið þið það er ekkert missing lengur. En ef við reiknum út meðaltalið á öllum dálkunum. Nei, þetta er ekki það sem ég vildi gera. Já, djók. Sem sagt hérna, í staðin fyrir að setja inn núll þá er ég að setja inn meðaltalið þannig að þið sjáið að ef við gerum þetta svona, við erum með sem sagt, þennann dálk. Við viljum fylla na með meðaltalinu af þessum dálk og þá lítur þetta svona út. Þá sjáið þið að hérna alls staðar er sama gildi. Þessi gildi voru öll NA og þau fá öll sama gildið sem er meðaltalið af öllum hinum. Ókei, outliers, útlagar. þá erum við með gagnasafn sem er innbyggt í scikit learn pakkann í Python. Þannig að við erum með, hérna, import-um úr scikit learn eða sk learn datasets. Þetta hérna sem heitir Boston og ef við kíkjum á það þá erum við með fimm hundruð og sex línur og þrettán dálka og ef við ætlum aðeins að skoða það, þetta er sem sagt það gagnasafn sem sýnir íbúðaverð í Boston. Getið fundið upplýsingar um það á, hérna, á netinu. Kannski skiptir ekki öllu máli hvað það nákvæmlega segir okkur en við erum með hérna mismunandi breytur og hér ætlum við að leita að útlögum. Við byrjum á því að leita að univariate-útlögum með því að nota boxplot. Þannig að þið sjáið hérna að við erum að nota seaborn og svo leitum við að, búum við til boxplot-ið úr, hérna, einni breytu það eru dis breytu, þá lítur boxplot-ið svona út, akkúrat það sama og var á glærunum, hérna, og þið sjáið hérna, þessir þrír punktar þarna út fyrir. Þeir eru hugsanlega útlagar því þeir eru fyrir utan þetta strik sem að eru mörkin á þessu, hérna, sem sagt q þrír sinnum, hérna, eitt og hálft iqr. Þannig að þeir eru útlagar. Við getum séð það mjög skýrt hér og svo hins vegar, ef við viljum leita að multi variate útlögum þá tökum við einhverjar tvær breytur og viljum skoða hvort það séu útlagar, sem sagt á milli tveggja breyta og þá til dæmis hérna, þá notum við bara scatterplot og veljum tvær breytur, annars vegar indus og hins vegar tax og fáum út þessa mynd hér og, og hérna, hérna, sem sagt, já, gæti maður ímyndað sér að það til dæmis þessi hér er útlagi eða þessi þarna uppi. Hann, hann er langt frá bæði hérna í þessu proportion og líka þessu value-i. Þessi efsti mundi líklega vera útlagi og þessi líklega líka. Það þarf bara svona meta það aðeins bara í hvert sinn. Ókei og svo getum við fundið útlaga með z-score-um. Þá bara reiknum við z-score-in þannig að ég ætla núna að að import-a þessu sem heitir stats og reikna z-score fyrir allar tölur, eða sem sagt öll, allar mælingarnar í þessari töflu. þannig að við fáum út töflu af z-score-um og svo munið þið að threshold-ið okkar var þrír, allt sem er með z-score yfir þremur eða undir mínus þremur er útlagi. Já, takið eftir, við erum með hérna np punktur abs þannig að þetta er, sem sagt, hérna jákvæða gildið. Hvað heitir það? Abs, absolute value? Hvað heitir það? Tölugildi, er það ekki? Já. Tölugildið. Og, og, hérna, sem sagt allt sem er absolute value stærra en þrír er útlagi þannig við getum, hérna, þetta segir okkur, annars vegar raðirnar og hins vegar dálkana þar sem gildin eru stærri en þrír. Þannig að hérna í röð fimmtíu og fimm eru þessi með útlaga þannig að við leitum af til dæmis hérna í röð fimmtíu og fimm, dálkur eitt þá sjáið þið það að þar erum við með z-gildi sem er stærri en þrír, þannig að það er útlagi þar og svo getum við hreinlega bara condition-að á þetta og sagt að við viljum bara halda því eftir sem er með z-gildi minna en þrír. Gerum það svona og þá sjáið þið að við erum eftir með töflu sem er með fjögur hundruð og fimmtán röðum og þrettán dálkum. Þannig að í upphafi ef þið munið þá vorum við með fimm hundruð og sex raðir og þrettán dálka. En núna erum við búin að fjarlægja allar raðir þar sem voru útlagar og svo getum við gert það sama með interquartile range-inu. Þá byrjum við á því að reikna q einn, q þrjá og interquartile range þannig að við getum séð fyrir alla dálkanna hvað interquartile range-ið er og svo getum við tékkað í töflunni okkar hvaða gildi eru með [HIK:inter] eða eru sem sagt útlagar samkvæmt okkar skilgreiningu á útlögum, að vera ákveðið langt fyrir neðan q einn, og ákveðið langt fyrir ofan q einn og svo þegar við erum búin að tékka á þessu þá bara getum við hreinlega hent þeim í burtu og þið sjáið núna að við erum með svolítið minna eftir heldur en áðan við erum með tvö hundruð sjötíu og fjórar raðir í staðinn fyrir fjögur hundruð og fimmtán og svo að lokum: staðla gögn. Ef við kíkjum á þennan dálk sem heitir crim í þessum Boston-gögnum og reiknum meðaltalið og staðalfrávikið þá sjáum við það að meðaltalið er einn komma núll tveir níu og staðalfrávikið er einn komma níu fimm. Ókei, svo getum við notað þennan min max scaler og við gerum það hérna og reiknum svo aftur meðaltalið og aftur staðalfrávikið. Þá sjáið þið að, hérna, meðaltalið er, er núll komma ellefu og staðalfrávikið er núll komma tuttugu og tveir. Og kannski áhugavert líka að tékka hvað er min og hvað er max. Þannig að ef við segjum, hérna, sem sagt, bætum hérna einu við segjum hérna minimum, minimum, og gerum hérna, úps, min þá sjáum við að minnsta gildið er núll, alveg eins og við vildum. Og eins af því við erum að nota þarna min max scaler þá verður allt á bilinu núll og upp í einn þannig að ef við bætum, hérna, kíkjum hvað max er, maximum, sjáið að max er minna en einn. Þannig að við erum búin að taka, sem sagt allt þetta range sem var í þessu crim hérna, við getum meira að segja tékkað líka hvað það var bara svona uppá djókið, sem sagt við vorum með minimum áður en við skölum þetta þá er þetta minnsta gildið og stærsta gildið var, maximum, átta komma sjötíu og einn. En svo skulum við með þessu min max scaler og fáum út að minnsta gildið er núll, og stærsta gildið er einn og það er bara útaf þessu falli sem við notuðum og að lokum að staðla gögnin, sem sagt nota, breyta þeim í c gildin eða z gildin, basically. þá hérna lítur þetta svona út. Þetta var eitthvað skrítið. Þetta er ekki rétt. Hvað veit ekki gerðist hér? Já, þannig að basically þið sjáið það að meðaltalið eftir að við sem sagt stöðluðum það er mjög lítið, eiginlega núll. Það á að vera akkúrat núll en bara út af sem sagt það verður aldrei alveg akkúrat, akkúrat núll það verður samt eiginlega núll og staðalfrávikið er, sem sagt eiginlega einn þannig að þarna erum við búin að, sem sagt breyta öllum gildunum í z-gildin sín og þá er meðaltalið núll og staðalfrávikið er einn. Já, þetta var endirinn á þessu. Ég hvet ykkur til að kíkja á hitt notebook-ið þar sem við erum að vinna með, hérna, aftur þetta reshaping og tidying og, hérna, meðal annars gögn frá n b a og alls konar sniðugt þannig að kíkið á það. Ég ætla að minna á sem sagt að minna ykkur á að kíkja á hópanna á canvas til að þið vitið í hvaða hópi þið eruð minna ykkur Minni ykkur á að senda inn, hérna, topic og hópa fyrir lokaverkefnið og svo var smá breyting á dagskránni þannig að á mánudaginn munum við tala um, hérna, model evaluation. Á föstudaginn næsta er enginn tími, það er UTmessa og svo á mánudaginn eftir það þá er gestafyrirlestur. Ókei.


Vinna með gögn í Canvas

Sem sagt eru inni á Canvas, tvö notebook. Ég ætla að fara bara í gegnum annað ég hvet ykkur til að kíkja á hitt. Það er svona annar fókus í því en, en, hérna, hérna er þetta sem við erum búin að vera að tala um í dag, sem sagt um það hvernig maður getur möndlað gögnin með melt og pívot til þess að, sem sagt þau, þannig að taflan lúkki rétt og svo hins vegar ýmiss konar, hérna, skipanir til þess að díla við missing values og útlaga og, og slíkt. Þannig að ef við bara byrjum hérna að keyra, sem sagt þetta sem við þurfum og þið sjáið við erum með allt þetta sama og venjulega, pandas og numpy. Við erum með eitthvað sem heitir datetime sem við notum til að díla við, hérna, díla við dagsetningar og svo náttúrulega plottið. Og þessi gögn finnið þið líka inni á Canvas í zip skrá. Þannig að byrjum á að lesa inn, hérna, þessi gögn frá Pew Research Center, um sem sagt innkomu og trúarbrögð. Sjáum það þetta sem við sáum áðan í, hérna, í glærunum þarna erum við sem sagt með fjölda eftir trúarbrögðum miðað við tekjur. Þannig að við erum með, dálkarnir tákna mismunandi tekjumörk. Svo sjáum við fjöldann sem tilheyrir hverju trúarbragði og eins og við sáum áðan þá er þetta dæmi um það að við erum með einhverjar upplýsingar í dálkaheitunum, sem sagt tekjutölurnar hérna. Og þetta eru upplýsingar sem við mundum vilja nota, hafa meira [UNK]. Við viljum geta notað þessar upplýsingar á einhvern hátt. Þannig að til þess að geta, að gera það þá, hérna, viljum við breyta töflunni með því að nota þetta melt fall. Hérna, það sem, eins og við nefndum áðan að við tökum töfluna okkar, við viljum halda eftir þessum religion dálki. Hann á að halda sér, en við ætlum að gera eitthvað við alla hina, sem sagt fyllimengið af dálkum og við viljum að það, sem sagt, varpist já, og, og, hérna, og nýi dálkurinn á að heita income eða tekjur og svo kemur nýr dálkur þar sem að þar sem að gildin í töflunni koma og hann á að heita sem sagt frequency. Og hérna og svo er hann bara eitthvað að sort-a þetta eftir trúarbrögðum. Þannig að ef við keyrum það þá sjáið þið að hún lítur svona út þegar við erum búin að umturna þessu. Hérna, það er voðalega gott bara að stara á þetta. Þetta alveg svoldið svona smá hérna flókið stundum að, þú veist, fatta nokkuð hvað er að gerast en hérna, sem sagt ég fann ágætis útskýringu hérna ég skal setja þá linkinn inn á þetta, á sem sagt Canvas líka, það sem er verið að tala um muninn á pivot og melt og hvernig það virkar. En basically það sem við erum að gera við erum að taka þessa, hérna, dálkana og aðeins bara umturna þeim þannig að við förum úr þessu format-i og í þetta langa format í þessu tilfelli. Og hérna erum við með lögin, vinsældalistann. Ef við lesum það inn þá lítur þetta svona út og þið sjáið þetta er svona alveg svolítið skrýtið af því að við erum með hérna hvenær það kom inn á listann og hvenær það var hæst á listanum og svo erum með hérna sjáið þið dálkaheitin hérna: x first week, x second week svo erum við bara með fullt af einhverjum NaN þannig að þetta eru svona eitthvað, eitthvað svona ekki ideal. Þannig að hérna aftur ætlum við að nota melt. Og við byrjum á að ákveða hvaða breytur melt fallið á að, sem sagt halda og við viljum halda þessum dálkum hérna, year, artist, inverted, bla bla bla, track time, genre, date entered og date peaked. Þeir allir eigi að halda sér kjurir en restin á að varpast svona á að melt-ast. Og, og, hérna, þannig að ef við bara keyrum þetta, já, og svo bætir hann líka við hérna, nei, fyrirgefðu hann, sem sagt bara melt-ar þetta. Hann heldur þessum dálkum sem eru nefndir hérna í þessu id-vars og svo melt-ar hann og þá lítur hún svona út þannig að þið sjáið að þessir dálkar sem við vildum halda þeir eru hérna allir nema allt sem var í restinni sem að var, sem sagt héðan, allt sem er hér er bara núna orðið að tveimur dálkum, það er að segja annar dálkurinn heitir week. Þetta hérna: first week, second week, sem við sáum, sem við sáum og seinasti dálkurinn hann heitir rank þar sem að tölurnar í þessum dálkum eru núna komnar. Og svo getum náttlega tekið þetta og tekið aðeins til í þessu af því þið sjáið að, sem sagt gildin hérna í þessum week dálki er náttúrlega svolítið ljót, við getum ekki, hérna, gert neitt við þetta svona þetta er svolítið skrítið. Þannig að það sem við gerum til dæmis er að nota svona regular expression, til þess að taka út bara töluna og svo erum við aðeins að manipulate-a líka dagsetninguna. Búa til hérna nýjan dálk sem heitir date og aðeins að möndla hann þannig að við fáum út eitthvað sem lítur svona út. Já, ég veit ekki af hverju þetta er svona skrítið hér þetta á ekki að vera svona. Þetta ætti raunverulega bara að enda hér. Skrítið jæja. Að þá sem sagt sjáið þið líka hérna í week er bara talan það er ekkert, hérna, þú veist, allt þetta crap Það er bara talan sjálf. Ókei. Já, og svo ætlum við að skipta þessu líka í tvær töflur. Aðra sem er bara með lögunum og hin sem er síðan bara með í hvaða sæti þau voru. Þannig að við getum hérna í fyrsta lagi búið til töfluna með bara með lögunum. Hún mundi líta svona út. Þannig að við veljum bara dálkanna sem við viljum. Við droppum duplicates af því þið sjáið náttúrulega hér að sama lagið er að koma rosalega oft fyrir. Við bara pössum það að hvert entry kemur bara fyrir einu sinni og, og hérna búum til sem sagt hérna id dálk og eitthvað og þá mundi hin taflan sem er með, hérna, því sæti sem lögin eru í, líta svona út þar sem við veljum þá árið og, já, artist-ann, lagið, tímann og genre-an og svo, hérna, breytum við þessu hérna. Ókei, og svo erum við með berkladæmið okkar sem við sáum líka í glærunum þar sem við vorum með fjölda berklasjúklinga í mismunandi löndum mismunandi árum eftir kyni og aldri og þið munið að hérna erum við líka mjög [HIK:flók] flókna samsetningu af kyni og aldri í dálka heitunum og aftur notuð við melt þannig að melt er svona frekar mikið galdra fall hér, að við viljum halda eftir country og year en við viljum breyta öllu hinu, við viljum við viljum varpa því öllu og við viljum að, sem sagt þessir gaurar þeir heiti cases og gildin heiti sex and age. Þannig að við byrjum á að breyta þessu, nei, fyrirgefðu nú erum við búin að [HIK:skip], nei, við voru búin að víxla þessu. Þetta var alltaf víxlað áðan, sem sagt þá heita, hérna, dálkarnir eiga að heita sex and age og cases á að heita, gildin eiga að heita cases. Takið eftir því, value-name og var-name. Og þá lítur þetta svona út nema ennþá er náttúrulega þetta hérna, þessi dálkur sex and age svolítið ómeðfærilegur þannig að við notum regular expressions, sjáið þið hérna, hérna, extract-a eitthvað út úr honum til þess að breyta þessum hérna dálki í einn dálk sem er bara með kyni og dálk sem er með sem sagt aldrinum. Þannig að við keyrum þetta. Nei, ekki þetta. Ég ætla að byrja upp á nýtt. Sorry. Svona, og svona. Þennan ætla ég að keyra. Ókei. Þá sjáið þið hérna að við erum með kynið. Við erum með lægri mörkin á aldrinum, efri mörkin á aldrinum og, sem sagt aldurs, raunverulega, bilið þannig að þessir age-lower og age-upper er sem sagt þeir saman búa til þennan age hérna. Þannig að þið sjáið sem sagt að þessi hérna temp data frame er bara sex and age dálkurinn úr þessum hann er bara þessi hérna dálkur, svo extröktum við sem sagt þetta sem streng og, og hlutina úr honum og búum til þá, sem sagt nýja, þrjá nýja dálka sem líta svona út. Og svo getum við bætt honum aftur við upprunalegu töflunna svona. Þannig að við erum aftur komin með sem sagt landið árið fjöldann og svo, sem sagt kyn og aldur. Þannig, núna lítur þetta út á svona einhverju formi sem er svolítið þægilegra. Ókei, og svo erum við með veðrið munið þið þessa hérna ljótu töflu sem var bara full af einhverju tómu og við vildum breyta henni og þið munið líka hérna þá vorum við, sem sagt árið og svo voru með mánuðinn og svo vorum dagana hérna í dálka heitunum sem er náttúrulega hálfkjánalegt en þetta getur náttúrulega bara verið að þessir sem eru að eru að safna þessum gögnum að fyrir hann er best að hafa þetta svona og þess vegna vinnur hann þetta svona. En en fyrir okkur sem viljum svo vinna eitthvað upp úr þessu þá er þetta alveg vonlaust þannig að við, við förum í það að, að, hérna, umturna þessu. Aftur notum við melt og við viljum að halda id, year, month og element en við viljum varpa, hérna, þessum. Varpa restinni og það á að heita day raw. Þannig að day raw, sjáið þið hérna, er þessi nöfn hérna og við erum ekki með neitt value name, sem þýðir það að við bara fáum default gildi hérna sem er bara value þannig að value name er bara value það er sem sagt í default-ið og svo viljum við út úr þessu hérna extract-a bara einn inn af því það er dagurinn, við erum ekki, þetta d skiptir engu máli það er hvort eð er alltaf það sama þannig að við getum alveg eins hent því í burtu. Þannig að við notum regular expression til að henda d-inu í burtu og við látum, hérna, breytum þessu í, í þetta. Sem sagt að id-ið er bara, sem sagt þessi. Þetta er alltaf það sama. Þetta var sem sagt mælitæki sem þeir notuðu eða eitthvað. Og svo það sem við erum að gera hér er að nota svona lambda expression til þess að breyta þessum strengjum, þetta eru strengir í í numeric, sem sagt pd to-numeric þannig að þetta er allt saman, allt saman strengir og við viljum þetta séu tölur. Þannig að ef við skoðum þetta núna þá sjáið þið hérna að við erum komin með, þetta er núna sem sagt, já, breytist ekkert, ekkert hér en við sjáum að, hérna, day er bara einn í staðin fyrir að vera D einn þá er það bara einn og svo sjáum við, já, þetta er svo bara tölur hérna. Við sjáum það hér. En svo að gera hér er að taka þessa þrjá dálka year, month og day og búa til date. Við viljum að sé bara date, sem sagt að data type-ið sé date þannig við getum reiknað með þeim eins og þeir séu dagar, en þá getur maður sagt: þú ert ein dagsetning, mínus öðrum dagsetning og fengið út fjöldann á dögum milli hentugt að vera með þetta sem date. Þannig að við skrifum hérna lítið fall sem að, hérna, breytir þessum tveimur dálkum í einn dálk sem heitir dagsetning og þá fáum við út eitthvað sem lítur svona út. Þannig að við erum með, hérna, mælitækið, við erum með max, hibben minn, hitann og gildi sem að mældist á þessum degi. Og svo þegar við erum búin að þessu þá viljum við unmelt-a þetta. Og andstaðan við melt heitir pivot. Í melt þá erum við að breyta töflum og gera þær langar og þegar við erum að pivot-a erum við að gera þær breiðar. Þannig að það virkar svipað, eða, þú veist, bara andstætt. Í þessu tilfelli þá viljum við halda eftir æti í beit og það er þetta sem við viljum, það sem við viljum breiða úr. Þannig að við breiðum úr þessu. Þá sjáum við hérna að við fáum út, sem sagt að töfluna sem lítur svona út. Við erum með mælitæki um dagsetninguna og erum með tvo dálka hérna, t Max og t min þannig að í staðinn fyrir að vera með, hérna, tvö mismunandi gildi alltaf hér í element, þá breytast þeir í tvo nýja dálka. Þannig að eins og ég segi þetta pivot er svona andstæð aðgerð við melt. Það gerir töflurnar breiðar á meðan melt gerir töflurnar langar. Ókei og svo vorum við með baby names in illinois, þið munið eftir því. Það voru sem sagt tvær mismunandi töflur í tveimur mismunandi skrám og við viljum sameina þær. Skrifum hérna smá lítið fall sem að, hérna, extract-ar árið úr, úr, úr, hérna, skráarheitinu. Þannig að þið sjáið hérna að við erum með búum til þennan hérna þessa hérna breytu sem heitir all files sem er með path-inn á skránni og svo getur skráin heitið mismunandi sjáið hérna erum við með svona expression þar sem við getum sett inn mismunandi gildi fyrir skráarheitið og svo bara lúppum við yfir alla fælana í þessari hérna möppu og finnum allar, alla fæla sem hafa þetta format sem heita eitthvað, sem sagt eru á þessu format-i og í okkar möppu erum við með, sem sagt tvær skrár, annars vegar tvö þúsund og fjórtán og hins vegar tvö þúsund og fimmtán og þannig að þessi for loop-a finnur báðar þær skrár og les þær inn og sameinar þær, sem sagt hérna, concat og, og, hérna, sem sagt, og þetta þá mundi vera byrjunin á þeirri skrá. Þetta er mjög sniðugt hérna að nota þetta hérna, sem sagt eitthvað svona regular expression og svo loop-a yfir allar skrár í möppunni, ef þú ert með margar skrár sem eru mjög svipaðar, sem sem er mjög oft það sem við erum að díla við, þá er þetta mjög góð lausn til þess. Ókei, eru einhverjar spurningar um melt og pivot og svona breiðar og, og, hérna, mjóar töflur? Eins og ég segi þá er bara gott að aðeins stara á þetta til þess að átta sig á því hvernig þetta virkar. En annars þá eru nokkur orð um data preprocessing Ég ætla að nota hérna, sem sagt þetta wheat prices sem við vorum með á seinasta föstudag og, og hérna og byrjum bara á því að lesa þau inn og við sjáum það að við erum með, sem sagt tuttugu og tvö þúsund, átta hundruð níutíu og níu observation-ir og átta breytur. Svo getum við tékkað hvort það sé einhver, hérna, sem sagt einhver missing value hvort það vanti einhverstaðar eitthvað og þetta er einfaldasta kall til þess. En þið sjáið það að [UNK] ef við lesum það inn þá bara fáum við út töfluna með logical gildum, fullt af false, false, false, svo eru hérna einhver nokkur, nokkur sem eru true þannig að við getum verið viss um það að hérna eru einhver missing en þetta er náttúrulega ekkert voðalega góð aðferð þannig að við getum beitt öðrum aðferðum. Þið sjáið til dæmis hérna. Ef við erum með þetta is null aftur á hérna data frame-inu okkar svo við gerum punktur values punktur ravel punktur sum þá fáum við einfaldlega út fjöldann af missing gildum í þessari töflu. Ef við sleppum þessu values ravel og gerum bara punktur sum þá gætum við séð eftir dálkum hvað eru mörg missing gildi. Þannig að við sjáum hérna núna mjög skýrt og greinilega að í dálkinum low q eru tíu þúsund fimmtíu og fimm, tíu þúsund fimm hundruð fimmtíu og sjö missing gildi. Ókei, og svo getum við, ef við viljum bara, sem sagt fjarlægt þessi missing gildi úr töflunni okkar og þá getum við notað þetta fall sem heitir drop NA þar sem að axis stendur fyrir hvort við eigum að gera eftir röðum eða dálkum þannig að axis jafnt og núll eru raðir axis jafnt einn eru dálkar. Og svo erum þetta how sem getur annað hvort verið any eða all og sem sagt ef við erum með all hérna þá þýðir það raunverulega að við droppum röðinni í þessu tilfelli ef að það vantar alla, ef öll röðin er með NA þá hendum við henni í burtu. En við vitum það að það er bara NA hjá okkur í low q þannig að það er hvergi það ástand að öll röðin er NA það er bara getur bara verið í þessum hérna dálki. Þannig að við setjum inn any í staðinn fyrir all það þýðir bara að eitthvert af gildunum þarf að vera NA og þá hendum við út allri röðinni. Eins ef við mundum setja hérna inn einn í staðin fyrir núll. Þá erum við að segja honum að þú átt að henda út öllum dálkum þar sem er eitthvað missing value. En ég ætla að gera þetta svona af því að ég vil ekki henda út dálkinum, og eins og ég segi það er bara eitthvað sem maður verður að ákveða í hvert skipti hvað maður ætlar að gera. Ákvörðun sem maður tekur, byggir bara á gagnasafninu og hvernig við ætlum að nota það. En hérna ætla ég að gera þetta svona. Ókei, og þá sjáið þið að þegar við erum búin að henda þeim öllum í burtu þá erum við með tólf þúsund raðir eftir en við vorum með tuttugu og tvö þúsund raðir, við erum búin að henda burtu þessum hérna tíu þúsund röðum. Ókei, en við getum líka impute-að við getum bætt inn, sem sagt þessum missing gildum í staðinn fyrir að henda þeim í burtu, og þá höfum við fallið sem heitir fill na sem tekur hérna argument hvað við viljum fylla inn þannig að hérna, ef við viljum fylla inn núll í staðinn fyrir það sem vantar, þá myndum við setja hérna núll. Við getum sett inn til dæmis eitthvað annað líka, til dæmis mean eða median eða hvað sem er þannig að við getum sett inn núll til dæmis. Svona, þá sjáið þið það er ekkert missing lengur. En ef við reiknum út meðaltalið á öllum dálkunum. Nei, þetta er ekki það sem ég vildi gera. Já, djók. Sem sagt hérna, í staðin fyrir að setja inn núll þá er ég að setja inn meðaltalið þannig að þið sjáið að ef við gerum þetta svona, við erum með sem sagt, þennann dálk. Við viljum fylla na með meðaltalinu af þessum dálk og þá lítur þetta svona út. Þá sjáið þið að hérna alls staðar er sama gildi. Þessi gildi voru öll NA og þau fá öll sama gildið sem er meðaltalið af öllum hinum. Ókei, outliers, útlagar. þá erum við með gagnasafn sem er innbyggt í scikit learn pakkann í Python. Þannig að við erum með, hérna, import-um úr scikit learn eða sk learn datasets. Þetta hérna sem heitir Boston og ef við kíkjum á það þá erum við með fimm hundruð og sex línur og þrettán dálka og ef við ætlum aðeins að skoða það, þetta er sem sagt það gagnasafn sem sýnir íbúðaverð í Boston. Getið fundið upplýsingar um það á, hérna, á netinu. Kannski skiptir ekki öllu máli hvað það nákvæmlega segir okkur en við erum með hérna mismunandi breytur og hér ætlum við að leita að útlögum. Við byrjum á því að leita að univariate-útlögum með því að nota boxplot. Þannig að þið sjáið hérna að við erum að nota seaborn og svo leitum við að, búum við til boxplot-ið úr, hérna, einni breytu það eru dis breytu, þá lítur boxplot-ið svona út, akkúrat það sama og var á glærunum, hérna, og þið sjáið hérna, þessir þrír punktar þarna út fyrir. Þeir eru hugsanlega útlagar því þeir eru fyrir utan þetta strik sem að eru mörkin á þessu, hérna, sem sagt q þrír sinnum, hérna, eitt og hálft iqr. Þannig að þeir eru útlagar. Við getum séð það mjög skýrt hér og svo hins vegar, ef við viljum leita að multi variate útlögum þá tökum við einhverjar tvær breytur og viljum skoða hvort það séu útlagar, sem sagt á milli tveggja breyta og þá til dæmis hérna, þá notum við bara scatterplot og veljum tvær breytur, annars vegar indus og hins vegar tax og fáum út þessa mynd hér og, og hérna, hérna, sem sagt, já, gæti maður ímyndað sér að það til dæmis þessi hér er útlagi eða þessi þarna uppi. Hann, hann er langt frá bæði hérna í þessu proportion og líka þessu value-i. Þessi efsti mundi líklega vera útlagi og þessi líklega líka. Það þarf bara svona meta það aðeins bara í hvert sinn. Ókei og svo getum við fundið útlaga með z-score-um. Þá bara reiknum við z-score-in þannig að ég ætla núna að að import-a þessu sem heitir stats og reikna z-score fyrir allar tölur, eða sem sagt öll, allar mælingarnar í þessari töflu. þannig að við fáum út töflu af z-score-um og svo munið þið að threshold-ið okkar var þrír, allt sem er með z-score yfir þremur eða undir mínus þremur er útlagi. Já, takið eftir, við erum með hérna np punktur abs þannig að þetta er, sem sagt, hérna jákvæða gildið. Hvað heitir það? Abs, absolute value? Hvað heitir það? Tölugildi, er það ekki? Já. Tölugildið. Og, og, hérna, sem sagt allt sem er absolute value stærra en þrír er útlagi þannig við getum, hérna, þetta segir okkur, annars vegar raðirnar og hins vegar dálkana þar sem gildin eru stærri en þrír. Þannig að hérna í röð fimmtíu og fimm eru þessi með útlaga þannig að við leitum af til dæmis hérna í röð fimmtíu og fimm, dálkur eitt þá sjáið þið það að þar erum við með z-gildi sem er stærri en þrír, þannig að það er útlagi þar og svo getum við hreinlega bara condition-að á þetta og sagt að við viljum bara halda því eftir sem er með z-gildi minna en þrír. Gerum það svona og þá sjáið þið að við erum eftir með töflu sem er með fjögur hundruð og fimmtán röðum og þrettán dálkum. Þannig að í upphafi ef þið munið þá vorum við með fimm hundruð og sex raðir og þrettán dálka. En núna erum við búin að fjarlægja allar raðir þar sem voru útlagar og svo getum við gert það sama með interquartile range-inu. Þá byrjum við á því að reikna q einn, q þrjá og interquartile range þannig að við getum séð fyrir alla dálkanna hvað interquartile range-ið er og svo getum við tékkað í töflunni okkar hvaða gildi eru með [HIK:inter] eða eru sem sagt útlagar samkvæmt okkar skilgreiningu á útlögum, að vera ákveðið langt fyrir neðan q einn, og ákveðið langt fyrir ofan q einn og svo þegar við erum búin að tékka á þessu þá bara getum við hreinlega hent þeim í burtu og þið sjáið núna að við erum með svolítið minna eftir heldur en áðan við erum með tvö hundruð sjötíu og fjórar raðir í staðinn fyrir fjögur hundruð og fimmtán og svo að lokum: staðla gögn. Ef við kíkjum á þennan dálk sem heitir crim í þessum Boston-gögnum og reiknum meðaltalið og staðalfrávikið þá sjáum við það að meðaltalið er einn komma núll tveir níu og staðalfrávikið er einn komma níu fimm. Ókei, svo getum við notað þennan min max scaler og við gerum það hérna og reiknum svo aftur meðaltalið og aftur staðalfrávikið. Þá sjáið þið að, hérna, meðaltalið er, er núll komma ellefu og staðalfrávikið er núll komma tuttugu og tveir. Og kannski áhugavert líka að tékka hvað er min og hvað er max. Þannig að ef við segjum, hérna, sem sagt, bætum hérna einu við segjum hérna minimum, minimum, og gerum hérna, úps, min þá sjáum við að minnsta gildið er núll, alveg eins og við vildum. Og eins af því við erum að nota þarna min max scaler þá verður allt á bilinu núll og upp í einn þannig að ef við bætum, hérna, kíkjum hvað max er, maximum, sjáið að max er minna en einn. Þannig að við erum búin að taka, sem sagt allt þetta range sem var í þessu crim hérna, við getum meira að segja tékkað líka hvað það var bara svona uppá djókið, sem sagt við vorum með minimum áður en við skölum þetta þá er þetta minnsta gildið og stærsta gildið var, maximum, átta komma sjötíu og einn. En svo skulum við með þessu min max scaler og fáum út að minnsta gildið er núll, og stærsta gildið er einn og það er bara útaf þessu falli sem við notuðum og að lokum að staðla gögnin, sem sagt nota, breyta þeim í c gildin eða z gildin, basically. þá hérna lítur þetta svona út. Þetta var eitthvað skrítið. Þetta er ekki rétt. Hvað veit ekki gerðist hér? Já, þannig að basically þið sjáið það að meðaltalið eftir að við sem sagt stöðluðum það er mjög lítið, eiginlega núll. Það á að vera akkúrat núll en bara út af sem sagt það verður aldrei alveg akkúrat, akkúrat núll það verður samt eiginlega núll og staðalfrávikið er, sem sagt eiginlega einn þannig að þarna erum við búin að, sem sagt breyta öllum gildunum í z-gildin sín og þá er meðaltalið núll og staðalfrávikið er einn. Já, þetta var endirinn á þessu. Ég hvet ykkur til að kíkja á hitt notebook-ið þar sem við erum að vinna með, hérna, aftur þetta reshaping og tidying og, hérna, meðal annars gögn frá n b a og alls konar sniðugt þannig að kíkið á það. Ég ætla að minna á sem sagt að minna ykkur á að kíkja á hópanna á canvas til að þið vitið í hvaða hópi þið eruð minna ykkur Minni ykkur á að senda inn, hérna, topic og hópa fyrir lokaverkefnið og svo var smá breyting á dagskránni þannig að á mánudaginn munum við tala um, hérna, model evaluation. Á föstudaginn næsta er enginn tími, það er UTmessa og svo á mánudaginn eftir það þá er gestafyrirlestur. Ókei.