logo

R – Lister

En liste i R programmering er et generisk objekt bestående af en ordnet samling af objekter. Lister er endimensionel , heterogen datastrukturer.

Listen kan være en liste over vektorer , en liste over matricer, en liste over tegn, en liste over funktioner , og så videre.



En liste er en vektor, men med heterogene dataelementer. En liste i R oprettes ved brug af list() funktion .

R giver adgang til elementer i en R-liste ved brug af indeksværdien. I R starter indekseringen af ​​en liste med 1 i stedet for 0.

Oprettelse af en liste

For at oprette en liste i R skal du bruge funktionen kaldet liste() .



Med andre ord er en liste en generisk vektor, der indeholder andre objekter. For at illustrere, hvordan en liste ser ud, tager vi et eksempel her. Vi ønsker at opbygge en liste over medarbejdere med detaljerne. Så til dette ønsker vi attributter som ID, medarbejdernavn og antallet af medarbejdere.

Eksempel:

R






# R program to create a List> > # The first attributes is a numeric vector> # containing the employee IDs which is created> # using the command here> empId =>c>(1, 2, 3, 4)> > # The second attribute is the employee name> # which is created using this line of code here> # which is the character vector> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> > # The third attribute is the number of employees> # which is a single numeric variable.> numberOfEmp = 4> > # We can combine all these three different> # data types into a list> # containing the details of employees> # which can be done using a list command> empList =>list>(empId, empName, numberOfEmp)> > print>(empList)>

>

>

Produktion

[[1]] [1] 1 2 3 4 [[2]] [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' [[3]] [1] 4>

Navnelistekomponenter

Navnelistekomponenter gør det nemmere at få adgang til dem.

rekursion java

Eksempel:

R




# Creating a named list> my_named_list <->list>(name =>'Sudheer'>, age = 25, city =>'Delhi'>)> # Printing the named list> print>(my_named_list)>

>

>

Produktion

$name [1] 'Sudheer' $age [1] 25 $city [1] 'Delhi'>

Adgang til R-listekomponenter

Vi kan få adgang til komponenter i en R-liste på to måder.

1. Få adgang til komponenter efter navne:

Alle komponenterne i en liste kan navngives, og vi kan bruge disse navne til at få adgang til komponenterne i R-listen ved hjælp af dollarkommandoen.

Eksempel:

R




# R program to access> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> >)> print>(empList)> # Accessing components by names> cat>(>'Accessing name components using $ command '>)> print>(empList$Names)>

>

>

Produktion

$ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 Accessing name components using $ command [1] 'Debi' 'Sandeep' 'Subham' 'Shiba'>

2. Få adgang til komponenter efter indeks:

Vi kan også få adgang til komponenterne i R-listen ved hjælp af indekser.

For at få adgang til komponenterne på øverste niveau i en R-liste skal vi bruge en dobbeltskæringsoperator [[ ]] som er to firkantede parenteser, og hvis vi vil have adgang til de nederste eller indre niveaukomponenter af en R-liste, skal vi bruge en anden firkantet parentes [ ] sammen med dobbeltskæringsoperatøren [[ ]] .

Eksempel:

R




# R program to access> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> >)> print>(empList)> # Accessing a top level components by indices> cat>(>'Accessing name components using indices '>)> print>(empList[[2]])> # Accessing a inner level components by indices> cat>(>'Accessing Sandeep from name using indices '>)> print>(empList[[2]][2])> # Accessing another inner level components by indices> cat>(>'Accessing 4 from ID using indices '>)> print>(empList[[1]][4])>

>

>

Produktion

$ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 Accessing name components using indices [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' Accessing Sandeep from na...>

Ændring af komponenter i en liste

En R-liste kan også ændres ved at få adgang til komponenterne og erstatte dem med dem, du ønsker.

Eksempel:

R


streng til int i java



# R program to edit> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> )> cat>(>'Before modifying the list '>)> print>(empList)> # Modifying the top-level component> empList$`Total Staff` = 5> # Modifying inner level component> empList[[1]][5] = 5> empList[[2]][5] =>'Kamala'> cat>(>'After modified the list '>)> print>(empList)>

>

>

Produktion

Before modifying the list $ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 After modified the list $ID [1] 1 2 3 4 5 $Names [1] 'Debi' 'Sandeep' 'Subham' ...>

Sammenkædning af lister

To R-lister kan sammenkædes ved hjælp af sammenkædningsfunktionen. Så når vi vil sammenkæde to lister, skal vi bruge sammenkædningsoperatoren.

Syntaks:

liste = c(liste, liste1)
liste = den oprindelige liste
liste1 = den nye liste

Eksempel:

R




# R program to edit> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> )> cat>(>'Before concatenation of the new list '>)> print>(empList)> # Creating another list> empAge =>c>(34, 23, 18, 45)> # Concatenation of list using concatenation operator> empList =>c>(empName, empAge)> cat>(>'After concatenation of the new list '>)> print>(empList)>

>

>

Produktion

Before concatenation of the new list $ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 After concatenation of the new list [1] 'Debi' 'Sandeep' 'Subham' 'S...>

Tilføjelse af element til liste

For at tilføje et element til slutningen af ​​listen, kan vi bruge append()-funktionen.

R




# creating a list> my_numbers =>c>(1,5,6,3)> #adding number at the end of list> append>(my_numbers, 45)> #printing list> my_numbers>

>

>

Produktion

[1] 1 5 6 3 45 [1] 1 5 6 3>

Sletning af komponenter i en liste

For at slette komponenter i en R-liste skal vi først og fremmest have adgang til disse komponenter og derefter indsætte et negativt tegn før disse komponenter. Det indikerer, at vi var nødt til at slette den komponent.

Eksempel:

R




# R program to access> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> )> cat>(>'Before deletion the list is '>)> print>(empList)> # Deleting a top level components> cat>(>'After Deleting Total staff components '>)> print>(empList[-3])> # Deleting a inner level components> cat>(>'After Deleting sandeep from name '>)> print>(empList[[2]][-2])>

>

>

Produktion

Before deletion the list is $ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 After Deleting Total staff components $ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sand...>

Sammenlægningsliste

Vi kan slå R-listen sammen ved at placere alle listerne i en enkelt liste.

hvordan man kontrollerer skærmstørrelsen

R




# Create two lists.> lst1 <->list>(1,2,3)> lst2 <->list>(>'Sun'>,>'Mon'>,>'Tue'>)> # Merge the two lists.> new_list <->c>(lst1,lst2)> # Print the merged list.> print>(new_list)>

>

>

Produktion:

[[1]] [1] 1 [[2]] [1] 2 [[3]] [1] 3 [[4]] [1] 'Sun' [[5]] [1] 'Mon' [[6]] [1] 'Tue'>

Konvertering af liste til vektor

Her skal vi konvertere R-listen til vektor, for dette vil vi først oprette en liste og derefter fjerne listen i vektoren.

R




# Create lists.> lst <->list>(1:5)> print>(lst)> # Convert the lists to vectors.> vec <->unlist>(lst)> print>(vec)>

>

>

Produktion

[[1]] [1] 1 2 3 4 5 [1] 1 2 3 4 5>

R Liste til matrix

Vi vil oprette matricer ved hjælp af matrix()-funktionen i R-programmering. En anden funktion, der vil blive brugt, er unlist()-funktionen til at konvertere listerne til en vektor.

R




# Defining list> lst1 <->list>(>list>(1, 2, 3),> >list>(4, 5, 6))> # Print list> cat>(>'The list is: '>)> print>(lst1)> cat>(>'Class:'>,>class>(lst1),>' '>)> # Convert list to matrix> mat <->matrix>(>unlist>(lst1), nrow = 2, byrow =>TRUE>)> # Print matrix> cat>(>' After conversion to matrix: '>)> print>(mat)> cat>(>'Class:'>,>class>(mat),>' '>)>

>

>

Produktion

The list is: [[1]] [[1]][[1]] [1] 1 [[1]][[2]] [1] 2 [[1]][[3]] [1] 3 [[2]] [[2]][[1]] [1] 4 [[2]][[2]] [1] 5 [[2]][[3]] [1] 6 Class: list After conversion to matrix: [,1] [,2] [,3] [1,...>

I denne artikel har vi dækket Lister i R, vi har dækket listeoperationer som at oprette, navngive, flette og slette en liste på R-sprog. R-liste er et vigtigt begreb og bør ikke springes over.

Håber du lærte om R-lister og dets operationer i denne artikel.

Tjek også: