R vektor

i denne artikel lærer du om vektor i R-Programmering. Du lærer at oprette dem, få adgang til deres elementer ved hjælp af forskellige metoder og ændre dem i dit program.

Vector er en grundlæggende datastruktur i R. Den indeholder element af samme type. Datatyperne kan være logiske, heltal, dobbelt, tegn, kompleks eller rå.

en vektortype kan kontrolleres med funktionen typeof().

en anden vigtig egenskab ved en vektor er dens længde. Dette er antallet af elementer i vektoren og kan kontrolleres med funktionen length().

Hvordan oprettes vektor i R?

vektorer oprettes generelt ved hjælp af funktionen c().

 vektor i R Programmering

da en vektor skal have elementer af samme type, vil denne funktion forsøge at tvinge elementer til samme type, hvis de er forskellige.

tvang er fra lavere til højere typer fra logisk til heltal til dobbelt til tegn.

> x <- c(1, 5, 4, 9, 0)> typeof(x) "double"> length(x) 5> x <- c(1, 5.4, TRUE, "hello")> x "1" "5.4" "TRUE" "hello"> typeof(x) "character"

hvis vi ønsker at oprette en vektor af fortløbende tal, er : operatøren meget hjælpsom.

eksempel 1: Oprettelse af en vektor ved hjælp af: operator

> x <- 1:7; x 1 2 3 4 5 6 7> y <- 2:-2; y 2 1 0 -1 -2

mere komplekse sekvenser kan oprettes ved hjælp af funktionen seq(), som at definere antal punkter i et interval eller trinstørrelsen.

eksempel 2: Oprettelse af en vektor ved hjælp af sekv() funktion

> seq(1, 3, by=0.2) # specify step size 1.0 1.2 1.4 1.6 1.8 2.0 2.2 2.4 2.6 2.8 3.0> seq(1, 5, length.out=4) # specify length of the vector 1.000000 2.333333 3.666667 5.000000

Sådan får du adgang til elementer i en vektor?

elementer af en vektor kan tilgås ved hjælp af vektorindeksering. Vektoren, der bruges til indeksering, kan være logisk, heltal eller tegnvektor.

brug af heltalsvektor som indeks

Vektorindeks i R starter fra 1, i modsætning til de fleste programmeringssprog, hvor indeks starter fra 0.

vi kan bruge en vektor af heltal som indeks for at få adgang til specifikke elementer.

vi kan også bruge negative heltal til at returnere alle elementer undtagen de angivne.

men vi kan ikke blande positive og negative heltal, mens indeksering og reelle tal, hvis de bruges, afkortes til heltal.

> x 0 2 4 6 8 10> x # access 3rd element 4> x # access 2nd and 4th element 2 6> x # access all but 1st element 2 4 6 8 10> x # cannot mix positive and negative integersError in x : only 0's may be mixed with negative subscripts> x # real numbers are truncated to integers 2 4

brug af logisk vektor som indeks

når vi bruger en logisk vektor til indeksering, returneres positionen, hvor den logiske vektor er TRUE.

denne nyttige funktion hjælper os med filtrering af vektor som vist nedenfor.

> x -3 3> x # filtering vectors based on conditions -3 -1> x 3

i ovenstående eksempel vil udtrykket x>0 give en logisk vektor (FALSE, FALSE, FALSE, TRUE), som derefter bruges til indeksering.

brug af tegnvektor som indeks

denne type indeksering er nyttig, når man beskæftiger sig med navngivne vektorer. Vi kan navngive hvert element i en vektor.

> x <- c("first"=3, "second"=0, "third"=9)> names(x) "first" "second" "third" > xsecond 0 > xfirst third 3 9

Hvordan ændres en vektor i R?

vi kan ændre en vektor ved hjælp af tildelingsoperatøren.

vi kan bruge de teknikker, der er diskuteret ovenfor, til at få adgang til specifikke elementer og ændre dem.

hvis vi vil afkorte elementerne, kan vi bruge omfordelinger.

> x -3 -2 -1 0 1 2> x <- 0; x # modify 2nd element -3 0 -1 0 1 2> x <- 5; x # modify elements less than 0 5 0 5 0 1 2> x <- x; x # truncate x to first 4 elements 5 0 5 0

Sådan slettes en vektor?

vi kan slette en vektor ved blot at tildele en NULL til den.

> x -3 -2 -1 0 1 2> x <- NULL> xNULL> xNULL

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.