Koodin suorituskyvyn arviointi ja optimointi R:ssä

R-koodin optimointi voi parantaa merkittävästi R-skriptien ja ohjelmien suorituskykyä, jolloin ne toimivat tehokkaammin. Tämä on erityisen tärkeää suurille ja monimutkaisille tietojoukoille sekä sovelluksille, joita on ajettava reaaliajassa tai säännöllisesti.

Tässä opetusohjelmassa arvioimme ja optimoimme R-koodin suorituskykyä käyttämällä erilaisia ​​, kuten tidyverse ja data.table. Esimerkkinä nähdään, kuinka kauan RStudiolla kestää lukea suuri CSV-tiedosto read.csv ( ) -funktiolla, tidyverse-paketilla ja data.table-paketilla.

Sisällysluettelo

Suorituskyvyn optimointi R:ssä

Avaa RStudio. Määritä R-komentosarjassa muuttujalle tiedostotunniste.

Sinun on käytettävä system.file ( ) -toimintoa määrittääksesi, kuinka kauan toiminnon tai toiminnon suorittaminen kestää. Koska haluamme arvioida, kuinka kauan tiedoston avaaminen kestää, kirjoita argumenttiin read.csv (df) .

Koodin suorituskyvyn arviointi ja optimointi R:ssä

Kun suoritat koodin, konsoli näyttää ajan, joka kesti tiedoston avaamiseen. Kulunut sarake näyttää, kuinka kauan CPU:lla kesti suorittaa R-koodi. Tulokset osoittavat, että RStudiossa kesti 31,93 sekuntia, mikä on huomattava määrä aikaa. Tämä latausaika on epäkäytännöllinen, jos työskentelet aina suurten tietojoukkojen kanssa.

Koodin suorituskyvyn arviointi ja optimointi R:ssä

Yksi tavoista optimoida R-koodisi suorituskykyä on käyttää tidyverse - pakettia. Tämä lyhentää aikaa 30 sekunnista 5 sekuntiin.

Huomaa, että tiedoston lukemiseksi sinun on käytettävä read_csv ( ) -toimintoa.

Koodin suorituskyvyn arviointi ja optimointi R:ssä

Tidyverse-paketti parantaa R:n latausaikaa käyttämällä lukupakettia , joka tarjoaa joukon nopeita ja tehokkaita toimintoja tiedon lukemiseen ja kirjoittamiseen. Readr-paketti sisältää toiminnot, kuten read_csv ( ) ja read_table ( ) , jotka voivat lukea suuria tietojoukkoja nopeasti ja tehokkaasti.

Toinen R:n optimointimenetelmä on data.table -paketin käyttö. Tämä on ladattavissa ilmaiseksi Internetistä.

Data.table-paketti R:ssä on tehokas ja tehokas työkalu suurten ja monimutkaisten tietojoukkojen käsittelyyn. Se tarjoaa parannetun version data.frame-objektista, joka on R:n ydintietorakenne. Data.tablen tärkein etu on sen korkea suorituskyky ja alhainen muistin käyttö suurten tietojoukkojen kanssa työskennellessä.

Huomaa, että tätä pakettia käytettäessä sinun on kirjoitettava fread ( ) -funktio read.csv ( ) sijaan. Kun suoritat tämän yhdessä koodisi kanssa, näet, että latausaika on lyhentynyt 2,25 sekuntiin.

Koodin suorituskyvyn arviointi ja optimointi R:ssä

R-pakettien vertailu Microbenchmarkin avulla

Voit verrata kunkin menetelmän suorituskykyä käyttämällä mikrobenchmark-toimintoa ( ) .

Mikrobenchmark ( ) -funktio R:ssä on työkalu R-koodin suorituskyvyn mittaamiseen. Se tarjoaa yksinkertaisen ja helppokäyttöisen käyttöliittymän R-lausekkeiden suoritusajan vertailuun.

Hienoa tässä toiminnossa on se, että voit määrittää, kuinka monta kertaa prosessi toistetaan. Tämä antaa tarkemmat tulokset. Pystyt myös tunnistamaan, ovatko tulokset johdonmukaisia.

Koodin suorituskyvyn arviointi ja optimointi R:ssä

Jos sinulla on vaikeuksia lukea CSV-tiedostoa LuckyTemplatesissa, RStudio voi tehdä sen puolestasi. R:ssä on muita vaihtoehtoja, joiden avulla voit optimoida koodisi suorituskyvyn. Data.table on kuitenkin erittäin suositeltavaa sen yksinkertaisuuden vuoksi.

Johtopäätös

R-koodin optimointi on tärkeä askel sen varmistamisessa, että R-skriptit toimivat tehokkaasti. On olemassa useita tekniikoita ja työkaluja, joita voidaan käyttää R-koodin optimointiin, kuten tidyverse-paketin käyttö tietojen käsittelyyn, data.table-paketin käyttö suurille tietojoukoille ja microbenchmark-paketin käyttäminen R-koodin suorituskyvyn mittaamiseen.

On myös tärkeää pitää mielessä hyvät koodauskäytännöt, kuten vektorisoitujen toimintojen käyttäminen silmukoiden sijaan, sisäänrakennettujen funktioiden käyttäminen oman kirjoittamisen sijaan ja koodin muistin käytön huomioiminen.

Kaikki parhaat,

George Mount


Päivämäärätaulukon luominen LuckyTemplatesissa

Päivämäärätaulukon luominen LuckyTemplatesissa

Ota selvää, miksi LuckyTemplatesissa on tärkeää pitää oma päivämäärätaulukko ja opi nopein ja tehokkain tapa tehdä se.

LuckyTemplates mobiiliraportointivinkkejä ja -tekniikoita

LuckyTemplates mobiiliraportointivinkkejä ja -tekniikoita

Tämä lyhyt opetusohjelma korostaa LuckyTemplates-mobiiliraportointiominaisuutta. Näytän sinulle, kuinka voit kehittää raportteja tehokkaasti mobiililaitteille.

Ammattimainen palveluanalyysiraportit LuckyTemplatesissa

Ammattimainen palveluanalyysiraportit LuckyTemplatesissa

Tässä LuckyTemplates Showcase -esittelyssä käymme läpi raportteja, jotka näyttävät ammattitaitoisen palveluanalytiikan yritykseltä, jolla on useita sopimuksia ja asiakkaiden sitoumuksia.

Microsoft Power Platform -päivitykset | Microsoft Ignite 2021

Microsoft Power Platform -päivitykset | Microsoft Ignite 2021

Käy läpi tärkeimmät Power Appsin ja Power Automaten päivitykset sekä niiden edut ja vaikutukset Microsoft Power Platformiin.

Yleiset SQL-funktiot: Yleiskatsaus

Yleiset SQL-funktiot: Yleiskatsaus

Tutustu joihinkin yleisiin SQL-toimintoihin, joita voimme käyttää, kuten merkkijono, päivämäärä ja joitain lisätoimintoja tietojen käsittelyyn tai käsittelyyn.

LuckyTemplates-mallin luominen: opas ja vinkkejä

LuckyTemplates-mallin luominen: opas ja vinkkejä

Tässä opetusohjelmassa opit luomaan täydellisen LuckyTemplates-mallin, joka on määritetty tarpeidesi ja mieltymystesi mukaan.

Kenttäparametrit ja pienet kertoimet LuckyTemplatesissa

Kenttäparametrit ja pienet kertoimet LuckyTemplatesissa

Tässä blogissa esittelemme, kuinka kerrostat kenttäparametreja pienillä kerroilla uskomattoman hyödyllisten näkemysten ja visuaalien luomiseksi.

LuckyTemplates-sijoitus ja mukautettu ryhmittely

LuckyTemplates-sijoitus ja mukautettu ryhmittely

Tässä blogissa opit käyttämään LuckyTemplates-sijoitus- ja mukautettuja ryhmittelyominaisuuksia näytetietojen segmentoimiseen ja luokitteluun kriteerien mukaan.

LuckyTemplatesissa näytetään vain tiettyyn päivämäärään asti kumulatiivinen kokonaissumma

LuckyTemplatesissa näytetään vain tiettyyn päivämäärään asti kumulatiivinen kokonaissumma

Tässä opetusohjelmassa käsittelen tiettyä tekniikkaa, jolla voit näyttää kumulatiivisen kokonaissumman LuckyTemplates-visuaaleissasi vain tiettyyn päivämäärään asti.

Bullet Charts: Kehittyneet mukautetut visuaalit LuckyTemplatesille

Bullet Charts: Kehittyneet mukautetut visuaalit LuckyTemplatesille

Opi luomaan ja mukauttamaan Bullet-kaavioita LuckyTemplatesissa, joita käytetään pääasiassa suorituskyvyn mittaamiseen suhteessa tavoitteeseen tai edellisiin vuosiin.