For å analysere et datasett, må du først forstå dataene. Noen ganger har du kanskje ingen forhåndskunnskap om et datasett, noe som hindrer deg i å få mest mulig ut av det. Som dataanalytiker kan du bruke Exploratory data analysis (EDA) for å få kunnskap om datasettet ditt før dybdeanalyse.

Utforskende dataanalyse (EDA) undersøker et datasett for å få meningsfull innsikt. Prosessen med å utføre EDA innebærer å spørre informasjon om strukturen og innholdet i et datasett.

Installerer Gota-pakken

Gota-pakken er den mest populære for dataanalyse i Go; det er som Python Pandas-pakke men for Go. Gota-pakken inneholder mange metoder for å analysere datasett og lese JSON-, CSV- og HTML-formater.

Kjør denne kommandoen på terminalen din i katalogen der du har initialisert en Go-modulfil:

 få -u github.com/-gota/gota

Kommandoen vil installere Gota i den lokale katalogen, klar for deg å importere pakken for å bruke den.

Akkurat som Pandas, støtter Gota serie- og datarammeoperasjoner. Det er to underpakker i Gota-pakken: serien og datarammepakken. Du kan importere enten en eller begge, avhengig av dine behov.

instagram viewer

import (
"github.com/-gota/gota/series"
"github.com/-gota/gota/dataframe"
)

Lese et datasett ved hjelp av Gota-pakken

Du kan bruke hvilken som helst CSV-fil du liker, men de følgende eksemplene viser resultater fra et Kaggle-datasett, som inneholder prisdata for bærbare datamaskiner.

Gota lar deg lese CSV-, JSON- og HTML-filformater for å lage datarammer ved hjelp av Les CSV, ReadJSON, og Les HTML metoder. Slik laster du inn en CSV-fil i et datarammeobjekt:

fil, feil := os. Open("/path/to/csv-file.csv")

hvis feil!= null {
fmt. Println("fil åpen feil")
}

dataramme := dataramme. LesCSV(fil)
fmt. Println (dataFrame)

Du kan bruke Åpen metoden for os pakken for å åpne en CSV-fil. ReadCSV-metoden leser filobjektet og returnerer et datarammeobjekt.

Når du skriver ut dette objektet, er utskriften i tabellformat. Du kan videre manipulere datarammeobjektet ved å bruke de forskjellige metodene Gota tilbyr.

Objektet vil bare skrive ut noen av kolonnene hvis et datasett har mer enn en angitt verdi.

Henter dimensjonen til datasettet

Dimensjonene til en dataramme er antall rader og kolonner den inneholder. Du kan hente disse dimensjonene ved å bruke Dims metoden til datarammeobjektet.

var rader, kolonner = dataFrame. Dims()

Erstatt en av variablene med en understreking for å hente kun den andre dimensjonen. Du kan også spørre om antall rader og kolonner individuelt ved å bruke og Ncol metoder.

var rader = dataramme. Nå()
var kolonner = dataFrame. Ncol()

Henter datatypene for kolonner

Du må kjenne de sammensatte datatypene i kolonnene til et datasett for å analysere det. Du kan hente disse ved å bruke Typer metode for datarammeobjektet ditt:

var typer = dataFrame. Typer()
fmt. Println (typer)

Typemetoden returnerer en skive som inneholder kolonnens datatyper:

Henter kolonnenavnene

Du trenger kolonnenavnene for å velge spesifikke kolonner for operasjoner. Du kan bruke Navn metode for å hente dem.

var kolonnenavn := dataramme. Navn()
fmt. Println (kolonnenavn)

Navn-metoden returnerer en del av kolonnenavnene.

Se etter manglende verdier

Du kan ha et datasett som inneholder null eller ikke-numeriske verdier. Du kan se etter slike verdier ved å bruke HasNaN og IsNaN metoder for et serieobjekt:

aCol := dataFrame. Col("display_size")
var hasNull = aCol. HasNaN()
var isNotNumber = aCol. IsNaN()

HasNan sjekker om en kolonne inneholder null-elementer. IsNaN returnerer en del av booleantallet som representerer om hver verdi i kolonnen er et tall.

Utføre beskrivende statistisk analyse

Beskrivende statistisk analyse hjelper deg å forstå fordelingen av numeriske kolonner. Bruker Beskrive metode, kan du generere en beskrivende statistisk analyse av datasettet ditt:

beskrivelse := dataFrame. Beskrive()
fmt. Println (beskrivelse)

Beskriv-metoden returnerer beregninger som gjennomsnitt, standardavvik og maksimumsverdier for kolonner i et datasett. Den oppsummerer disse i tabellformat.

Du kan også være spesifikk og fokusere på kolonner og beregninger ved å velge en bestemt kolonne og deretter spørre etter beregningen du ønsker. Du bør først hente serien som representerer en spesifikk kolonne, og deretter bruke metodene slik:

aCol := dataFrame. Col("display_size")
var bety = aKol. Mener()
var median = aKol. Median()
var minimum = aCol. min()
var standardavvik = aCol. StdDev()
var maksimum = aCol. Maks()
var kvantiler25 = aCol. Kvantil(25.0)

Disse metodene speiler resultatene fra den beskrivende statistiske analysen som Describe utfører.

Henter elementene i en kolonne

En av de siste oppgavene du vil utføre er å sjekke verdiene i en kolonne for en generell oversikt. Du kan bruke Rekorder metode for å vise verdiene til en kolonne.

aCol := dataFrame. Col("merke")
fmt. Println (aCol. Records())

Denne metoden returnerer en del av strenger som inneholder verdiene i den valgte kolonnen:

Eksportere en Gota-dataramme til en fil

Hvis du velger å gå videre og bruke Gota-pakken for full dataanalyse, må du lagre data i filer. Du kan bruke Skriv CSV og WriteJSON metoder for dataramme for å eksportere filer. Metodene tar inn en fil som du oppretter ved hjelp av os pakkens Skape metode.

Slik kan du eksportere en dataramme ved hjelp av Gota-pakken.

dataramme := dataramme. LesCSV(fil)
outputFile, feil := os. Create("output.csv")

hvis feil!= null {
Logg. Fatal (feil)
}

feil = dataramme. SkrivCSV(utdatafil)

hvis feil!= null {
Logg. Fatalln("Det oppsto en feil ved å skrive datarammeinnholdet til filen")
}

De Dataramme variabel er en representasjon av datarammen. Når du bruker Skape metoden for os pakken, oppretter den en ny, tom fil med det angitte navnet og returnerer filen. WriteCSV-metoden tar inn filforekomsten og returnerer en feil eller null hvis det ikke er noen feil.

Undersøkende dataanalyse er viktig

En forståelse av data og datasett er avgjørende for dataanalytikere og maskinlæringsspesialister. Det er en kritisk operasjon i arbeidssyklusen deres, og utforskende dataanalyse er en av teknikkene de bruker for å oppnå det.

Det er mer ved Gota-pakken. Du kan bruke den til forskjellige datakranglefunksjoner på samme måte som du ville brukt Python Pandas-biblioteket for dataanalyse. Gota støtter imidlertid ikke like mye funksjonalitet som Pandas.