R-Vector

in dit artikel leert u meer over vector in R-Programmering. Je leert ze te maken, toegang te krijgen tot hun elementen met behulp van verschillende methoden, en ze te wijzigen in uw programma.

Vector is een basis gegevensstructuur in R. Het bevat element van hetzelfde type. De gegevenstypen kunnen logisch, integer, dubbel, karakter, complex of raw zijn.

het type van een vector kan worden gecontroleerd met de functie typeof().

een andere belangrijke eigenschap van een vector is zijn lengte. Dit is het aantal elementen in de vector en kan worden gecontroleerd met de functie length().

Hoe maak ik een Vector in R?

vectoren worden over het algemeen gemaakt met behulp van de functie c().

Vector in R-Programmering

aangezien een vector elementen van hetzelfde type moet hebben, zal deze functie elementen proberen te dwingen tot hetzelfde type, als ze verschillend zijn.

Coercion is van lagere naar hogere types van logisch naar integer naar dubbel naar karakter.

> 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"

als we een vector van opeenvolgende getallen willen maken, is de : operator erg handig.

Voorbeeld 1: Een vector maken met behulp van : operator

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

meer complexe sequenties kunnen worden gemaakt met behulp van de functie seq(), zoals het definiëren van het aantal punten in een interval, of de stapgrootte.

Voorbeeld 2: een vector maken met behulp van seq () functie

> 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

hoe toegang te krijgen tot elementen van een Vector?

elementen van een vector zijn toegankelijk met behulp van vectorindexering. De vector die gebruikt wordt voor het indexeren kan een logische, integer of karaktervector zijn.

het gebruik van integer vector als index

de Vectorindex in R begint bij 1, in tegenstelling tot de meeste programmeertalen waar de index begint bij 0.

we kunnen een vector van gehele getallen als index gebruiken om toegang te krijgen tot specifieke elementen.

we kunnen ook negatieve gehele getallen gebruiken om alle elementen te retourneren, behalve die welke zijn opgegeven.

maar we kunnen positieve en negatieve gehele getallen niet mengen terwijl indexering en reële getallen, indien gebruikt, worden afgekapt tot gehele getallen.

> 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

met behulp van logische vector als index

wanneer we een logische vector gebruiken voor het indexeren, wordt de positie waar de logische vector TRUE is teruggegeven.

deze handige functie helpt ons bij het filteren van vector zoals hieronder getoond.

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

in het bovenstaande voorbeeld geeft de uitdrukking x>0 een logische vector (FALSE, FALSE, FALSE, TRUE) die vervolgens wordt gebruikt voor het indexeren.

met behulp van tekenvector als index

dit type indexering is nuttig bij het omgaan met benoemde vectoren. We kunnen elk element van een vector noemen.

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

hoe een vector in R te wijzigen?

we kunnen een vector wijzigen met behulp van de toegewezen operator.

we kunnen de hierboven besproken technieken gebruiken om toegang te krijgen tot specifieke elementen en deze te wijzigen.

als we de elementen willen afkappen, kunnen we hertoewijzingen gebruiken.

> 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

hoe een Vector verwijderen?

we kunnen een vector verwijderen door er gewoon een NULL aan toe te wijzen.

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

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.